Alterando as regras de NAT do iptables on the fly

1

Estou tentando alterar continuamente as regras nat do iptables, mais precisamente, alterando a porta de destino no tempo de execução. No entanto, vejo que apenas o primeiro pacote em um fluxo atinge a tabela nat. Depois disso, o resto dos pacotes terá automaticamente a mesma ação tomada no primeiro pacote, mesmo que a regra tenha mudado.

por exemplo,

sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -i eth0 -j REDIRECT --to-port 9999

ou

sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -i eth0 -j DNAT --to-port 9999

Isso só terá efeito se a regra existir antes do início do fluxo.

... ...

Além disso, como remédio, tentei interromper o acompanhamento da conexão da seguinte forma:

sudo iptables -t raw -A PREROUTING -p tcp -m tcp --dport 80 -i eth0 -j NOTRACK 
sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -i eth0 -m conntrack --ctstate UNTRACKED -j REDIRECT --to-port 9999

ou

sudo iptables -t raw -A PREROUTING -p tcp -m tcp --dport 80 -i eth0 -j NOTRACK
sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -i eth0 -m state --state UNTRACKED -j DNAT --to-port 9999

mas não está funcionando bem, por favor me ajude neste assunto. Obrigado antecipadamente ...

    
por max100 09.06.2017 / 15:05

0 respostas