温馨提示×

ubuntu iptables怎么保存规则

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

在 Ubuntu 上保存 iptables 规则,常见做法有以下几种(取决于系统版本和初始化方式):


一、使用 iptables-save / iptables-restore(通用)

1. 保存当前规则

sudo iptables-save > /etc/iptables/rules.v4

(IPv6 用)

sudo ip6tables-save > /etc/iptables/rules.v6

2. 恢复规则

sudo iptables-restore < /etc/iptables/rules.v4

⚠️ 这种方式不会开机自动生效,需要配合启动脚本或服务。


二、Ubuntu 16.04 及以前(使用 iptables-persistent)

安装

sudo apt update
sudo apt install iptables-persistent

安装过程中会提示是否保存当前规则,选 Yes。

手动保存

sudo netfilter-persistent save

手动恢复

sudo netfilter-persistent reload

规则默认保存在:

  • /etc/iptables/rules.v4
  • /etc/iptables/rules.v6

✅ 推荐方式(传统 Ubuntu)


三、Ubuntu 18.04 / 20.04 / 22.04(使用 netplan + nftables 时注意)

如果你仍在使用 iptables(不是 nftables)

sudo apt install iptables-persistent
sudo netfilter-persistent save

检查当前后端

sudo update-alternatives --list iptables

如果看到 iptables-nft,说明系统用的是 nftables 兼容层。


四、开机自动加载(systemd)

iptables-persistent 已包含 systemd 服务:

systemctl status netfilter-persistent

确保启用:

sudo systemctl enable netfilter-persistent

五、查看当前规则

sudo iptables -L -n -v

✅ 总结推荐

  • 最稳妥方式:
    sudo apt install iptables-persistent
    sudo netfilter-persistent save
    
  • 规则文件位置:/etc/iptables/rules.v4

如果你告诉我 Ubuntu 版本 和 是否使用 nftables / ufw,我可以给你更精确的操作步骤。

0 踩