Wie kann ich bestimmte Regeln aus iptables entfernen?

Ich hoste spezielle HTTP- und HTTPS-Dienste auf den Ports 8006 bzw. 8007. Ich benutze iptables, um den Server zu "aktivieren". um die eingehenden HTTP- und HTTPS-Ports weiterzuleiten:

<code>iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 8006 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --dport 8007 -j ACCEPT
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8006 
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8007  
iptables -A OUTPUT -t nat -d 127.0.0.1 -p tcp --dport 80 -j REDIRECT --to-ports 8006
iptables -A OUTPUT -t nat -d 127.0.0.1 -p tcp --dport 443 -j REDIRECT --to-ports 8007 
</code>

Das wirkt wie ein Zauber. Ich möchte jedoch ein anderes Skript erstellen, das meinen Server wieder deaktiviert. d.h. iptables in den Zustand zurückversetzen, in dem es sich befand, bevor die obigen Zeilen ausgeführt wurden. Es fällt mir jedoch schwer, die Syntax zum Entfernen dieser Regeln zu finden. Das einzige, was zu funktionieren scheint, ist eine vollständige Spülung:

<code>iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
</code>

Damit werden aber auch andere iptables-Regeln gelöscht, was unerwünscht ist.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage