温馨提示×

Debian如何关闭iptables规则

小樊
75
2026-08-14 05:09:24
栏目: 智能运维

在 Debian 系统中,iptables 本身没有“关闭”命令,只能通过清空规则、设置默认策略为 ACCEPT 的方式来实现“关闭防火墙”的效果。下面按常见场景详细说明。


一、临时关闭 iptables(推荐做法)

1️⃣ 清空所有规则

sudo iptables -F        # 清空所有规则
sudo iptables -X        # 删除自定义链
sudo iptables -Z        # 清零计数器

2️⃣ 设置默认策略为 ACCEPT

sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT

✅ 此时 iptables 相当于“关闭”,所有流量都允许通过。


二、IPv6(ip6tables)同样需要关闭

如果你启用了 IPv6:

sudo ip6tables -F
sudo ip6tables -X
sudo ip6tables -P INPUT ACCEPT
sudo ip6tables -P FORWARD ACCEPT
sudo ip6tables -P OUTPUT ACCEPT

三、永久关闭(防止重启后恢复)

⚠️ 注意

Debian 默认不会自动保存 iptables 规则,但如果你使用了以下工具,需要额外处理:

  • iptables-persistent
  • netfilter-persistent

1️⃣ 检查是否启用了持久化

systemctl status netfilter-persistent

2️⃣ 卸载或禁用

方法一:卸载

sudo apt remove iptables-persistent

方法二:禁用

sudo systemctl disable netfilter-persistent
sudo systemctl stop netfilter-persistent

四、停止并禁用相关服务(如果有)

某些系统可能配置了自动加载脚本:

sudo systemctl disable iptables
sudo systemctl stop iptables

(Debian 默认通常没有这个服务)


五、确认当前状态

查看当前规则:

sudo iptables -L -n -v

如果看到:

  • policy ACCEPT
  • 没有具体规则

✅ 说明 iptables 已“关闭”


六、Debian 10+ 的补充说明(nftables)

Debian 10 以后默认使用 nftables,iptables 可能是兼容层。

查看是否使用 nftables

sudo nft list ruleset

清空 nftables(等效关闭)

sudo nft flush ruleset

七、总结(最常用命令)

sudo iptables -F
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT

如果你告诉我:

  • Debian 版本(如 10 / 11 / 12)
  • 是服务器还是桌面
  • 是否使用 Docker / K8s / 云服务器

我可以给你更精确且安全的操作方案。

0 踩