iptables redirecionamento de saída ignorado

1

Eu quero redirecionar os pacotes de saída da minha máquina na porta 12345 para modificação em outro processo ( netsed ), que os enviará ao destino.

Posso descartar pacotes de saída usando iptables -A OUTPUT -p tcp --dport 12345 -j DROP . Assim, não há mais pacotes sendo enviados via 12345 .

Para redirecioná-los para o netsed, parece que preciso usar a tabela NAT e o DNAT:

iptables -t nat -A OUTPUT -p tcp --dport 12345 -j DNAT --to-destination 127.0.0.1:$netsed_port

Esta é a abordagem correta?

Porque não funciona: não impede que os pacotes de saída cheguem ao seu destino remoto original. Deve, certo? Não deveria redirecioná-los para um beco sem saída igual a eles? Além disso, não estou recebendo nenhum pacote na porta do netsed.

/ usando REDIRECT não ajuda: iptables -t nat -A OUTPUT -p tcp --dport 12345 -j REDIRECT --to-port $netsed_port

    
por Blauhirn 16.09.2016 / 14:39

1 resposta

0

A regra iptables precisa ser definida antes de o primeiro pacote ser enviado pelo respectivo processo na porta 12345 . Isso resolveu meu problema.

também tentei desativar o firewall ufw disable . Não tenho certeza de como isso afeta o iptables.

redirecionamento e dnat realmente funcionam igualmente bem aqui

    
por 16.09.2016 / 16:46

Tags