Cofanie przekierowywania portów


16

Potrzebuję przekierowania wszystkich żądań do portu 80 na numer 8020. Przejrzałem go i otrzymałem:

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

Teraz w przyszłości, jeśli będę musiał to cofnąć, co mam zrobić (oprócz ponownego uruchomienia systemu)?

Odpowiedzi:


14

Po prostu usuń regułę:

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

18

Trudno mi całkowicie zrekonstruować iptable, kiedy chcę ją usunąć. Instaed Lista reguł z numerami linii, a następnie usuwam według numeru. Na przykład:

iptables -t nat -L --line-numbers

Daje dane wyjściowe takie jak:

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 

Następnie, aby usunąć według numeru:

iptables -t nat -D PREROUTING 1

Uwaga: po usunięciu linii wszystkie linie poniżej otrzymają nowy numer linii. Na przykład, jeśli masz reguły takie jak:

1 rule A
2 rule B
3 rule C

i usuwasz regułę 2, a następnie otrzymujesz:

1 rule A
2 rule C

Ta odpowiedź jest znacznie bardziej pomocna niż odpowiedź zaakceptowana, dziękuję za napisanie @brainsik
rjhilgefort

0

Zastanawiam się, czy użycie vima byłoby opcją

iptables-save > editme

vim editme # remove the rule you dont want

iptables-restore < editme

0

Możesz także usunąć całe reguły przekierowania portów za pomocą tego kodu

sudo iptables -P FORWARD DROP
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.