最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
UFW 防火墙常用规则与配置如何写
时间:2026-08-31 20:52:47 编辑:袖梨 来源:一聚教程网
UFW规则按编号从上到下匹配,命中即停,因此必须先放行再封禁。关键包括:服务名放行(如ssh)、协议端口控制(如8080/tcp)、IP/网段限制(如from 192.168.1.0/24)、默认策略(deny incoming/allow outgoing)及编号管理(status numbered、insert、delete)。
UFW 防火墙规则写法关键在于“语义清晰、顺序合理、先放行再封禁”。它不靠逻辑优先级判断 allow/deny 谁更“高级”,而是严格按编号从上到下匹配,命中即停。所以规则怎么写,直接决定流量是否被正确放行或拦截。
基础端口放行与封禁
最常用的是按协议+端口控制访问:
-
允许标准服务:用服务名更安全(自动适配端口和协议),例如
sudo ufw allow ssh(等价于22/tcp)、sudo ufw allow https(443/tcp); -
指定端口和协议:如开放 Web 管理端口
sudo ufw allow 8080/tcp,或 DNS 查询sudo ufw allow 53/udp; -
拒绝特定端口:比如禁用 Telnet:
sudo ufw deny 23/tcp; -
批量端口范围:如开发环境常用
sudo ufw allow 3000:3010/tcp。
按 IP 或网段精细控制
避免全网开放,只允许可信来源:
-
单个 IP 放行 SSH:
sudo ufw allow from 203.0.113.45 to any port 22; -
限制整个子网:
sudo ufw allow from 192.168.1.0/24 to any port 80; -
封禁恶意 IP:
sudo ufw deny from 198.51.100.123(会拒绝该 IP 的所有进出连接); -
配合接口使用(如只在内网口生效):
sudo ufw allow in on eth1 from 10.0.2.0/24 to any port 5432。
默认策略与安全基线
这是所有规则生效的前提,必须最先设置:
- 入站默认拒绝:
sudo ufw default deny incoming; - 出站默认允许:
sudo ufw default allow outgoing; - 路由流量默认拒绝(可选加固):
sudo ufw default deny routed; - 设置后务必确认:
sudo ufw status verbose中看到 Default: deny (incoming) 才算生效。
规则管理与避坑要点
写对只是第一步,管好才不出错:
-
查看带编号的规则:
sudo ufw status numbered,便于定位删除或插入; -
删除规则:用编号删最稳妥,如
sudo ufw delete 3;也可按内容删,如sudo ufw delete allow 8080/tcp; -
插入高优先级规则:想让某条 deny 规则生效,必须插在 allow 前面,用
sudo ufw insert 1 deny from 203.0.113.200; - 云服务器特别注意:启用前务必已放行当前 SSH 连接的端口,否则会立即失联;推荐搭配云平台安全组使用,UFW 作第二道防线。