我有一堆用iptables -S转储的规则:
-P INPUT ACCEPT -P FORWARD ACCEPT -P OUTPUT ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT etc...
下一次,我会通过iptables-save和iptables-restore来做到这一点。 但现在呢,还有更好的办法来恢复我的规则,除了:
iptables -F xargs -n1 -d\\n iptables < iptables.dump
可悲的是…可能不是。 但是…一个兴趣点…您的iptables -F不足以冲刷您的所有表。 (是的,这足以清除默认filter表中的所有链)您必须指定每个表来刷新,而不仅仅是默认的表。 即iptables -t nat -F和/或iptables -t mangle -F 。