在 Debian 系统中清空(重置)iptables 规则,可以按下面步骤操作。这些命令会清除所有表(filter、nat、mangle 等)中的规则、链和计数器,请谨慎使用(尤其是远程服务器)。
# 清除 filter 表规则
iptables -F
iptables -X
iptables -Z
# 清除 nat 表规则
iptables -t nat -F
iptables -t nat -X
iptables -t nat -Z
# 清除 mangle 表规则
iptables -t mangle -F
iptables -t mangle -X
iptables -t mangle -Z
# 清除 raw 表规则(如有使用)
iptables -t raw -F
iptables -t raw -X
iptables -t raw -Z
-F:清空规则-X:删除自定义链-Z:清零计数器清空规则后,建议将默认策略设为 ACCEPT,否则可能直接断网:
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
⚠️ 远程服务器务必执行这一步,否则可能立刻断开 SSH 连接。
#!/bin/bash
iptables -F
iptables -X
iptables -Z
iptables -t nat -F
iptables -t nat -X
iptables -t nat -Z
iptables -t mangle -F
iptables -t mangle -X
iptables -t mangle -Z
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
保存为 clear_iptables.sh,然后执行:
chmod +x clear_iptables.sh
./clear_iptables.sh
iptables -L -n -v
如果看到类似以下内容,说明已清空:
Chain INPUT (policy ACCEPT)
Chain FORWARD (policy ACCEPT)
Chain OUTPUT (policy ACCEPT)
Debian 默认可能使用 nftables 替代 iptables:
update-alternatives --display iptables
nft flush ruleset
iptables 规则不会自动保存,但如果你之前保存过:
rm -f /etc/iptables/rules.v4
rm -f /etc/iptables/rules.v6
或(旧系统):
iptables-save > /etc/iptables/rules.v4
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F
iptables -X
iptables -Z
如果你告诉我:
我可以给你一个最安全、不断网的清空方案。