Annulation de la redirection de port

16

J'ai besoin que toutes les demandes de port 80 soient transmises au 8020. Je l'ai recherché sur Google et j'ai obtenu:

iptables -t nat -I PREROUTING --source 0/0 --destination 0/0 -p tcp --dport 80 -j REDIRECT --to-ports 8020

Maintenant, à l'avenir, si je dois l'annuler, que dois-je faire (à part redémarrer le système)?

Raj
la source

Réponses:

14

Supprimez simplement la règle:

iptables -t nat -D PREROUTING --source 0/0 --destination 0/0 -p tcp --dport 80 -j REDIRECT --to-ports 8020
basvdlei
la source
18

Je trouve pénible de reconstruire complètement la règle iptable quand je veux la supprimer. Instaed, je liste les règles avec des numéros de ligne, puis je les supprime par numéro. Par exemple:

iptables -t nat -L --line-numbers

Donne une sortie comme:

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 

Ensuite pour supprimer par numéro:

iptables -t nat -D PREROUTING 1

Avertissement: lorsque vous supprimez une ligne, toutes les lignes ci-dessous obtiendront un nouveau numéro de ligne. Par exemple, si vous aviez des règles comme:

1 rule A
2 rule B
3 rule C

et vous supprimez la règle 2, vous obtenez:

1 rule A
2 rule C
brainsik
la source
Cette réponse est beaucoup plus utile que la réponse acceptée, merci pour la rédaction @brainsik
rjhilgefort
0

Je me demande si l'utilisation de vim serait une option

iptables-save > editme

vim editme # remove the rule you dont want

iptables-restore < editme
AlexanderN
la source
0

Vous pouvez également supprimer l'intégralité des règles de redirection de port à l'aide de ce code

sudo iptables -P FORWARD DROP
Shinto Joseph
la source