温馨提示×

如何重置ubuntu iptables规则

小樊
40
2026-10-18 14:43:10
栏目: 智能运维

在 Ubuntu 上重置(清空并恢复默认)iptables 规则,可以按下面几种方式来操作,根据你的使用场景选择。


一、快速清空所有 iptables 规则(最常用)

sudo iptables -F
sudo iptables -X
sudo iptables -Z

说明:

  • -F:清空所有规则
  • -X:删除用户自定义链
  • -Z:清空计数器

如果你还用了 IPv6:

sudo ip6tables -F
sudo ip6tables -X
sudo ip6tables -Z

二、恢复默认策略(推荐一起做)

清空规则后,建议把默认策略改回 ACCEPT:

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

IPv6:

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

三、一次性重置脚本(推荐)

#!/bin/bash
iptables -F
iptables -X
iptables -Z
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

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

保存为 reset_iptables.sh 后执行:

sudo bash reset_iptables.sh

四、如果你使用的是 ufw

Ubuntu 默认可能使用 UFW:

sudo ufw disable
sudo ufw reset
sudo ufw enable

ufw reset 会清空所有 UFW 规则并重置。


五、如果你使用 nftables(新系统)

查看是否使用 nftables:

sudo nft list ruleset

清空:

sudo nft flush ruleset

六、防止规则被持久化恢复

如果你之前保存过规则:

iptables-persistent

sudo netfilter-persistent flush

或删除规则文件:

sudo rm /etc/iptables/rules.v4
sudo rm /etc/iptables/rules.v6

总结(最简重置命令)

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

如果你是 服务器远程操作,重置前一定要确保不会把自己锁在外面(如 SSH 断开)。

如果你愿意,我可以帮你写一份 安全的 iptables 基础规则模板。

0 踩