温馨提示×

Debian iptables如何保存

小樊
59
2026-07-29 17:27:02
栏目: 智能运维

在 Debian 系统中,iptables 规则默认不会自动保存,重启后会丢失。要永久保存,常见做法有以下几种(按推荐程度):


✅ 方法一:使用 iptables-persistent(最推荐)

这是 Debian 官方推荐的方式,简单可靠。

1. 安装

sudo apt update
sudo apt install iptables-persistent

安装过程中会询问是否保存当前规则:

  • ✅ 选择 Yes

2. 保存规则(手动)

如果之后修改了规则,需要手动保存:

sudo netfilter-persistent save

或者:

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

3. 恢复规则(一般自动)

重启后自动加载:

sudo netfilter-persistent reload

✅ 方法二:使用 iptables-save / iptables-restore(手动方式)

保存规则

sudo iptables-save > /etc/iptables.rules

恢复规则

sudo iptables-restore < /etc/iptables.rules

开机自动恢复(不推荐,除非你很熟悉)

在 /etc/network/if-pre-up.d/ 中写脚本,例如:

sudo nano /etc/network/if-pre-up.d/iptables

内容:

#!/bin/bash
iptables-restore < /etc/iptables.rules

赋予执行权限:

sudo chmod +x /etc/network/if-pre-up.d/iptables

⚠️ 这种方式不如 iptables-persistent 稳定。


✅ 方法三:Debian 10+ / 新系统(nftables)

Debian 10 以后默认使用 nftables,但 iptables 命令仍然存在(作为兼容层)。

查看是否使用 nftables:

sudo update-alternatives --config iptables

如果你使用的是 nftables,推荐直接保存 nftables 规则:

sudo nft list ruleset > /etc/nftables.conf

✅ 验证是否保存成功

重启前:

sudo iptables -L

重启后:

sudo iptables -L

规则仍然存在即成功。


✅ 总结(推荐)

场景 推荐方式
Debian 稳定版 ✅ iptables-persistent
临时保存 iptables-save
新系统 / 高性能 nftables

如果你愿意,可以告诉我:

  • Debian 版本(cat /etc/debian_version)
  • 是服务器还是桌面
  • 是否使用 IPv6

我可以给你最合适的一套配置示例。

0 踩