在 Debian 系统中,清空 iptables 规则通常有以下几种方式,取决于你想“清空到什么程度”。
iptables -F
iptables -X
iptables -Z
说明:
-F:清空所有链中的规则(filter 表)-X:删除用户自定义的链-Z:清空计数器⚠️ 注意:默认只作用于 filter 表
iptables 有多个表(filter、nat、mangle、raw 等),建议一起清空:
iptables -F
iptables -X
iptables -Z
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -t raw -F
iptables -t raw -X
清空规则后,如果默认策略是 DROP,可能导致网络断开:
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
✅ 推荐在清空后执行
#!/bin/bash
iptables -F
iptables -X
iptables -Z
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
iptables-save > /dev/null
iptables -F
iptables -X
或直接:
echo -n > /dev/null
iptables-restore < <(echo "")
Debian 新版本可能用 nftables:
nft flush ruleset
如果你在远程操作:
iptables -P INPUT ACCEPT
iptables -F
⚠️ 切勿在 DROP 策略下直接 -F
如果你需要 开机自动清空 或 与 ufw / firewalld 共存,可以告诉我你的使用场景。