Řešení 1:
Abych na vaši otázku odpověděl stručně, ne:po spláchnutí každého stolu by nezůstala žádná „zbytková“ pravidla. V zájmu důkladnosti však možná budete chtít nastavit zásady pro vestavěný INPUT
a FORWARD
řetězí na ACCEPT
, také:
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -t nat -F
iptables -t mangle -F
iptables -F
iptables -X
Vymazat pravidla ip6tables:
ip6tables -P INPUT ACCEPT
ip6tables -P FORWARD ACCEPT
ip6tables -P OUTPUT ACCEPT
ip6tables -t nat -F
ip6tables -t mangle -F
ip6tables -F
ip6tables -X
...a to by mělo stačit. iptables -nvL
by to mělo způsobit (nebo velmi podobný) výstup:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Řešení 2:
Toto správně zcela resetuje váš systém iptables do velmi základního stavu:
iptables-save | awk '/^[*]/ { print $1 }
/^:[A-Z]+ [^-]/ { print $1 " ACCEPT" ; }
/COMMIT/ { print $0; }' | iptables-restore
Všechny zásady budou resetovány na ACCEPT a také vyprázdnění každé aktuálně používané tabulky. Všechny řetězce jiné než vestavěné již nebudou existovat.
Řešení 3:
Kdykoli potřebuji vypnout firewall, je něco takového:
iptables-save > iptables.bak
service iptables stop
(jsem na fedoře)
Řešení 4:
Stačí vyložit iptables
' moduly z jádra:
modprobe -r iptable_raw iptable_mangle iptable_security iptable_nat iptable_filter
UPD Bohužel až příliš dobré, aby to byla pravda. Pokud je v tabulce pravidlo nebo uživatelsky definovaný řetězec, odpovídající počet odkazů na modul je 1 a modprobe -r
selže. Můžete odstranit pravidla a uživatelem definované řetězce, jako je tento:
echo $'*raw\nCOMMIT\n*mangle\nCOMMIT\n*security\nCOMMIT\n*nat\nCOMMIT\n*filter\nCOMMIT' | iptables-restore
nebo:
iptables-save | awk '/^[*]/ { print $1 "\nCOMMIT" }' | iptables-restore
Také můžete chtít uvolnit moduly tímto způsobem (žádné pevně zakódované názvy modulů):
lsmod | egrep ^iptable_ | awk '{print $1}' | xargs -rd\\n modprobe -r
Na druhou stranu, po tomto iptables-save
produkuje pěkný prázdný výstup :)
Řešení 5:
Zálohuje konfiguraci do iptables_backup.conf a vyčistí všechna pravidla.
iptables-save | tee iptables_backup.conf | grep -v '\-A' | iptables-restore
Chcete-li obnovit předchozí konfiguraci:
iptables-restore < iptables_backup.conf