温馨提示×

ubuntu防火墙规则如何写

小樊
37
2026-09-16 20:24:15
栏目: 智能运维

在 Ubuntu 中,防火墙通常使用 UFW(Uncomplicated Firewall),它是 iptables 的简化前端。下面按常见场景给你说明怎么写规则。


一、UFW 基础(推荐新手)

1. 安装与启用

sudo apt update
sudo apt install ufw
sudo ufw enable

2. 查看状态

sudo ufw status
sudo ufw status verbose

二、常用规则写法

1. 允许/拒绝端口

# 允许 SSH(非常重要,别锁自己)
sudo ufw allow 22

# 允许 HTTP / HTTPS
sudo ufw allow 80
sudo ufw allow 443

# 拒绝某端口
sudo ufw deny 3306

2. 指定协议

sudo ufw allow 53/tcp
sudo ufw allow 53/udp

3. 允许特定 IP

# 允许某 IP 所有访问
sudo ufw allow from 192.168.1.100

# 允许某 IP 访问某端口
sudo ufw allow from 192.168.1.100 to any port 22

4. 允许网段

sudo ufw allow from 10.0.0.0/24

5. 限制 SSH 暴力破解(推荐)

sudo ufw limit 22/tcp

三、接口 & 方向(进阶)

# 只允许 eth0 上的 80 端口
sudo ufw allow in on eth0 to any port 80

四、删除规则

方法 1:按编号删除(推荐)

sudo ufw status numbered
sudo ufw delete 3

方法 2:按规则删除

sudo ufw delete allow 80

五、重置防火墙

sudo ufw reset

六、如果你要用 iptables(不推荐新手)

示例:允许 22 端口

iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables-save > /etc/iptables.rules

七、Docker 特别注意 ⚠️

Docker 会绕过 UFW,如对外暴露端口:

docker run -p 127.0.0.1:8080:8080 ...

或配合 DOCKER-USER 链写规则。


如果你告诉我:

  • 服务器还是桌面
  • 要开放 哪些服务
  • 是否 公网 IP / 云服务器

我可以直接帮你写一套完整防火墙配置。

0