É possível whitelist um programa específico no iptables?

3

É possível permitir todo o tráfego de um programa específico em iptables ? Caso contrário, usar nmap e uma configuração restrita de iptables ao mesmo tempo parece impossível.

    
por yzT 08.03.2013 / 22:04

2 respostas

4

Usando o iptables, não é possível dizer para permitir todo o tráfego de um programa específico, mas é possível dizer para permitir o tráfego enviado de um aplicativo em execução de um usuário específico.

Por exemplo.

$ iptables -A OUTPUT -p tcp --dport 992 -d localhost -m owner ! --uid-owner root -j REJECT

Esta regra diz ao kernel para rejeitar pacotes enviados para a porta TCP local 992, a menos que eles sejam enviados por um dos processos do root.

    
por 08.03.2013 / 22:53
0

O proprietário do módulo também deve ser a solução IMHO. Mas fazer o binário rodar como SUID pode não ser útil (mesmo que não seja SUID root). Em vez disso, executá-lo como SGID e usar --gid-owner em vez de --uid-owner poderia até ser mais fácil do que uma solução de contêiner (e poderia impor o efeito desejado sem a colaboração de todos os usuários). Você criaria um grupo que é usado exclusivamente para este programa ou usado exclusivamente para todos os programas que não devem ser incomodados pelo firewall.

    
por 09.03.2013 / 07:45