Bloquear conexões de saída para certos uids (raiz, apache, ninguém)


8

Com o iptables no CentOS 5 e 6 Linux - como você pode impedir que processos em execução como root , apache ou ninguém iniciem conexões de saída?

No CentOS 5 Linux, tentei colocar essas linhas em / etc / sysconfig / iptables:

-A OUTPUT -m owner --uid-owner root -j DROP
-A OUTPUT -m owner --uid-owner apache -j DROP
-A OUTPUT -m owner --uid-owner nobody -j DROP

mas, infelizmente, obtém o erro:

# sudo service iptables restart
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Unloading modules:                               [  OK  ]
iptables: Applying firewall rules: iptables-restore v1.4.7: owner: Bad value for "--uid-owner" option: "apache"
Error occurred at line: 27
Try `iptables-restore -h' or 'iptables-restore --help' for more information.
                                                           [FAILED]

você não pode fazer isso usando o iptables. O iptables verifica apenas os pacotes ip e não há informações sobre o uid / gid. iptables só pode bloquear pacotes pelos campos de origem / destino, portos, ...
Goez

Eu sei que o PF do OpenBSD pode fazer isso. E também parece haver o proprietário -m no iptables do Linux também. Então, talvez você esteja errado?
Alexander Farber

se eu verificar minha página de manual, -m significa match (module) e não o proprietário, talvez exista um módulo para o proprietário do processo, não tenho certeza.
Goez

No meu entendimento, "-m owner" diz ao iptables: "carregue o módulo 'owner', para que possamos fazer as coisas"
Alexander Farber

apenas verificado, existe de fato um módulo proprietário. Nunca ouvi falar disso antes. Mas ele funciona com ID numérico do, então ele vai ter que alterar o seu governo
Goez

Respostas:


8

Tente usar o UID numérico em vez do nome. Por exemplo:

-A OUTPUT -m owner --uid-owner 400 -j DROP

ao invés de

-A OUTPUT -m owner --uid-owner apache -j DROP

Você pode encontrar o UID digitando

id user
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.