在 Ubuntu 上,默认情况下是没有启用防火墙的。服务器安装完系统后,配置防火墙应该是第一件要做的事。本文用最简洁的方式带你配好 UFW。
📋 文章目录
🔥 Ubuntu 自带的防火墙工具
Ubuntu 默认自带的、也是推荐使用的防火墙管理工具是 UFW(Uncomplicated FireWall,简单防火墙)。
- UFW 是 iptables 的用户友好前端,日常管理比直接写 iptables 规则方便得多。
- 语法简单、学习成本低、适合服务器日常运维。
⚙️ 防火墙设置与管理
1. 启用防火墙
配置规则之前,建议先启用 UFW。⚠️ 但有一个前提:请先确保你已经放行了 SSH(端口 22),否则启用后自己会被锁在服务器外面。
先放行 SSH:
sudo ufw allow ssh
然后启用防火墙:
sudo ufw enable
sudo ufw status # 查看状态
sudo ufw status verbose # 查看详细状态 + 默认策略
2. 设置默认策略
默认策略决定了没有匹配规则的连接如何处理:
sudo ufw default deny incoming # 拒绝所有传入(最安全)
sudo ufw default allow outgoing # 允许所有传出(默认)
🔓 开放端口与服务
A. 按端口号开放
# 开放 TCP 端口(最常用)
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
# 开放 UDP 端口
sudo ufw allow 53/udp # DNS
# TCP + UDP 同时开放
sudo ufw allow 123 # NTP
B. 按服务名称开放
UFW 内置了常用服务名(映射到 /etc/services):
sudo ufw allow ssh # TCP 22
sudo ufw allow http # TCP 80
sudo ufw allow https # TCP 443
C. 按应用程序配置文件开放
某些程序安装时会自带 UFW 配置文件:
# 查看可用的应用程序配置
sudo ufw app list
# 开放特定应用
sudo ufw allow 'Nginx Full'
🗑️ 删除与重置
删除规则
# 删除一条规则
sudo ufw delete allow 80/tcp
重置防火墙(谨慎!)
⚠️ 此操作会删除所有规则并禁用防火墙:
sudo ufw reset
💡 快速参考卡片
| 操作 | 命令 |
|---|---|
| 启用防火墙 | sudo ufw enable |
| 查看状态 | sudo ufw status verbose |
| 开放端口 | sudo ufw allow 80/tcp |
| 开放服务 | sudo ufw allow ssh |
| 删除规则 | sudo ufw delete allow 80/tcp |
| 重置 | sudo ufw reset |
做到这四步——放行 SSH、启用、配默认策略、开放必要端口——你的 Ubuntu 服务器防火墙就算配好了。

发表回复