Basta excluir a regra:
iptables -t nat -D PREROUTING --source 0/0 --destination 0/0 -p tcp --dport 80 -j REDIRECT --to-ports 8020
Eu preciso que todos os pedidos para a porta 80 sejam encaminhados para o 8020. Eu pesquisei e consegui:
iptables -t nat -I PREROUTING --source 0/0 --destination 0/0 -p tcp --dport 80 -j REDIRECT --to-ports 8020
Agora, no futuro, se eu tiver que desfazer isso, o que eu faço (além de reiniciar o sistema)?
Acho complicado reconstruir completamente a regra de iptable quando quero excluí-la. Instaed eu listo as regras com números de linha e então apago por número. Por exemplo:
iptables -t nat -L --line-numbers
Dá saída como:
Chain PREROUTING (policy ACCEPT)
num target prot opt source destination
1 REDIRECT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 redir ports 8020
Em seguida, apague por número:
iptables -t nat -D PREROUTING 1
Advertência: quando você excluir uma linha, todas as linhas abaixo receberão um novo número de linha. Por exemplo, se você tivesse regras como:
1 rule A
2 rule B
3 rule C
e você exclui a regra 2, você recebe:
1 rule A
2 rule C
Eu estou querendo saber se usar o vim seria uma opção
iptables-save > editme
vim editme # remove the rule you dont want
iptables-restore < editme
Você também pode descartar todas as regras de encaminhamento de porta usando este código
sudo iptables -P FORWARD DROP
Tags port-forwarding iptables