iptables规则保存持久化

对于 Debian/Ubuntu 等系统‌:通常使用 iptables-save 和 iptables-restore 命令。配置完成后,运行 sudo iptables-save > /etc/iptables/rules.v4 将当前 IPv4 规则保存到文件。然后,可以通过系统服务(如 netfilter-persistent)或启动脚本在开机时自动加载该文件。

在 Debian 12 上,成功保存 iptables 规则后,可以通过安装并启用 netfilter-persistent 服务来实现开机自动加载。

sudo apt update
sudo apt install iptables-persistent

在安装过程中,系统会提示你是否保存当前的 IPv4 和 IPv6 规则。如果之前已经手动保存过规则,可以选择“否”。

将当前生效的 iptables 规则保存到默认的持久化配置文件中。这通常对应 /etc/iptables/rules.v4(IPv4)和 /etc/iptables/rules.v6(IPv6)。

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

也可以使用 netfilter-persistent 提供的命令来保存:

sudo netfilter-persistent save

启用开机自启服务‌:
确保 netfilter-persistent 服务已设置为开机自动启动并立即启动它。

sudo systemctl enable netfilter-persistent
sudo systemctl start netfilter-persistent

完成以上步骤后,系统每次重启时,netfilter-persistent 服务都会自动从 /etc/iptables/ 目录下的规则文件恢复 iptables 规则。

验证与后续管理‌:

  • 检查服务状态‌:可以使用 sudo systemctl status netfilter-persistent 来确认服务运行正常。
  • 更新规则‌:未来若修改了 iptables 规则并希望永久生效,只需再次执行 sudo netfilter-persistent save 命令即可将当前内存中的规则覆盖保存到配置文件中。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注