基本使用
一、查看当前规则
# 查看规则列表
ufw status
# 查看详细信息(含默认策略、日志状态)
ufw status verbose
# 查看带编号的规则(方便删除)
ufw status numbered
二、添加规则
基本语法
ufw allow <端口>/tcp # 允许 TCP 端口(自动同时允许 IPv4 + IPv6)
ufw allow <端口>/udp # 允许 UDP 端口
ufw deny <端口>/tcp # 拒绝端口
示例
# 允许单个端口
ufw allow 80/tcp
# 允许端口范围
ufw allow 60000:61000/tcp
# 允许特定 IP 访问某端口
ufw allow from 192.168.1.100 to any port 3306
# 允许特定 IP 段
ufw allow from 10.0.0.0/8 to any port 22
# 允许所有 IP 访问某端口
ufw allow from any to any port 8080
三、删除规则
方法一:通过编号删除(推荐)
# 1. 先查看编号
ufw status numbered
# 2. 按编号删除
ufw delete 3
方法二:通过规则内容删除
# 删除允许规则
ufw delete allow 80/tcp
# 删除拒绝规则
ufw delete deny 80/tcp
# 删除特定 IP 规则
ufw delete allow from 192.168.1.100 to any port 3306
四、其他常用操作
# 重置防火墙(清空所有规则,慎用)
ufw reset
# 启用/禁用防火墙
ufw enable
ufw disable
# 设置默认策略
ufw default deny incoming # 默认拒绝所有入站
ufw default allow outgoing # 默认允许所有出站
# 查看日志
tail -f /var/log/ufw.log
五、注意事项
| 注意点 | 说明 |
|---|
| 删除前先查看编号 | 用 ufw status numbered 确认要删除的规则编号 |
| 规则自动持久化 | UFW 规则保存后重启自动生效,无需额外操作 |
| 删除 SSH 规则需谨慎 | 避免误删导致无法远程连接 |
| IPv4/IPv6 自动同步 | ufw allow 默认同时配置 IPv4 和 IPv6 |
六、快速参考
| 操作 | 命令 |
|---|
| 允许端口 | ufw allow <端口>/tcp |
| 拒绝端口 | ufw deny <端口>/tcp |
| 删除规则 | ufw delete <编号> 或 ufw delete allow <端口>/tcp |
| 查看状态 | ufw status verbose |
| 查看编号 | ufw status numbered |
对于不同协议的放行
方法一:不指定协议(推荐)
ufw allow 80
不写 /tcp 或 /udp 时,默认同时允许 TCP 和 UDP。
方法二:分别指定
ufw allow 80/tcp
ufw allow 80/udp
对比
| 命令 | TCP | UDP |
|---|
ufw allow 80 | 允许 | 允许 |
ufw allow 80/tcp | 允许 | 不允许 |
ufw allow 80/udp | 不允许 | 允许 |
示例
# 同时允许 TCP + UDP
ufw allow 53
# 端口范围同时允许 TCP + UDP
ufw allow 60000:61000
# 删除时同样不需要指协议
ufw delete allow 53
总结:写端口时不加 /tcp 或 /udp 就是同时允许两种协议。
#ufw #防火墙