温馨提示×

Debian防火墙如何开机启动

小樊
48
2026-10-11 05:51:52
栏目: 智能运维

在 Debian 中,“防火墙”通常是指 iptables / nftables,或者更常见的 UFW(Uncomplicated Firewall)。下面按不同情况说明如何开机自动启动防火墙。


一、使用 UFW(推荐,最简单)

1. 安装 UFW

sudo apt update
sudo apt install ufw

2. 配置规则(示例)

sudo ufw allow 22/tcp
sudo ufw enable

3. 设置开机启动

UFW 在 enable 后默认开机自动启动:

sudo systemctl enable ufw

查看状态:

sudo ufw status
sudo systemctl status ufw

✅ 结论:UFW 是最省心的方式,规则会持久化并随系统启动。


二、使用 iptables(传统方式)

Debian 默认 iptables 规则不会自动保存,需要手动处理。

1. 安装 iptables(如未安装)

sudo apt install iptables

2. 配置规则后保存

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

(目录不存在可先创建)

sudo mkdir -p /etc/iptables

3. 开机自动恢复规则

方法 A:使用 netfilter-persistent(推荐)

sudo apt install iptables-persistent

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

之后规则会保存在:

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

开机自动加载:

sudo systemctl enable netfilter-persistent

保存规则命令:

sudo netfilter-persistent save

三、使用 nftables(Debian 新版本推荐)

Debian 10+ 默认逐渐转向 nftables。

1. 安装 nftables

sudo apt install nftables

2. 编写规则

例如:

sudo nft add table inet filter
sudo nft add chain inet filter input { type filter hook input priority 0 \; }
sudo nft add rule inet filter input ct state established,related accept

3. 保存规则

sudo nft list ruleset > /etc/nftables.conf

4. 开机启动

sudo systemctl enable nftables
sudo systemctl start nftables

四、总结对照表

方式 是否默认开机 持久化方式
UFW ✅ 是 自动
iptables ❌ 否 iptables-persistent
nftables ✅ 是 /etc/nftables.conf

如果你能告诉我:

  • Debian 版本(如 11 / 12)
  • 用的是 UFW / iptables / nftables
  • 是 云服务器还是物理机

我可以给你一条最适合你环境的精确命令。

0 踩