温馨提示×

debian怎么替换防火墙规则

小樊
41
2026-09-10 22:03:33
栏目: 智能运维

在 Debian 里“替换防火墙规则”要看你用的是哪一套防火墙工具。Debian 常见有三种:iptables / nftables(底层)、ufw(简化前端)、firewalld(较少用)。下面分别说明。


一、使用 ufw(最推荐,新手友好)

Debian 默认常带 ufw。

1. 查看当前规则

sudo ufw status numbered

2. 删除旧规则(替换前先清)

sudo ufw delete 规则编号

或一次性重置:

sudo ufw reset

3. 写入新规则

sudo ufw allow 22/tcp
sudo ufw deny 80/tcp
sudo ufw enable

✅ “替换”= 删除旧规则 + 加新规则


二、使用 iptables(传统方式)

1. 查看规则

sudo iptables -L -n -v

2. 清空所有规则(谨慎)

sudo iptables -F
sudo iptables -X

3. 添加新规则

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j DROP

4. 保存规则(重要)

sudo apt install iptables-persistent
sudo netfilter-persistent save

三、使用 nftables(Debian 新推荐)

1. 查看规则

sudo nft list ruleset

2. 清空并替换

sudo nft flush ruleset

3. 写新规则(示例)

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 tcp dport 22 accept
sudo nft add rule inet filter input tcp dport 80 drop

4. 保存

sudo nft list ruleset > /etc/nftables.conf

四、使用 firewalld(较少,但存在)

sudo firewall-cmd --list-all
sudo firewall-cmd --remove-service=http --permanent
sudo firewall-cmd --add-port=22/tcp --permanent
sudo firewall-cmd --reload

五、怎么选?

场景 推荐
个人 / 服务器新手 ufw
老系统 / 脚本兼容 iptables
Debian 新系统 nftables
企业 / CentOS 迁移 firewalld

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

  • Debian 版本(cat /etc/debian_version)
  • 当前用的防火墙(ufw/nftables/iptables)
  • 你想“替换成什么规则”

我可以直接帮你写一套完整命令。

0 踩