ufw 不能单独实现安全的跨网段访问,需启用 ip 转发、配置路由、细化 cidr 规则、开启日志审计,并叠加 tls 认证、服务绑定内网地址及跳板机管控等分层机制。

UFW 默认只管理本机的入站和出站流量,不直接处理跨网段转发或内网互信策略。要实现跨网段访问并保障安全,需结合系统 IP 转发、路由配置、UFW 规则细化及审计日志联动,而非仅靠 UFW 单点设置。
启用 IPv4 转发与基础路由可达性
跨网段通信的前提是系统能正确转发数据包。Ubuntu 默认关闭 IP 转发:
- 临时开启:
sudo sysctl -w net.ipv4.ip_forward=1 - 永久生效:编辑
/etc/sysctl.conf,取消#net.ipv4.ip_forward=1前的注释 - 确认下游设备(如终端、网关)已将目标网段路由指向该 UFW 主机(例如通过静态路由或 DHCP Option 121)
按源/目的网段精确控制访问规则
UFW 支持基于 CIDR 的地址匹配,避免用 allow any 开放全网段:
- 允许 192.168.10.0/24 访问本机 SSH:
sudo ufw allow from 192.168.10.0/24 to any port 22 proto tcp - 限制仅某台设备(如 10.20.30.5)访问内网服务:
sudo ufw allow from 10.20.30.5 to any port 8080 - 拒绝整个高危网段(如测试网段 172.16.0.0/12):
sudo ufw deny from 172.16.0.0/12
注意:UFW 规则顺序执行,deny 规则应放在 allow 之后、默认策略之前,否则可能被默认策略截断。
启用日志与审计联动排查异常访问
仅放行不等于可信,需记录关键连接行为供溯源:
- 开启 UFW 日志(中等级别即可):
sudo ufw logging medium,日志输出到/var/log/ufw.log - 配合
grep快速筛选跨网段访问:sudo grep "SRC=10\.20\." /var/log/ufw.log | tail -20 - 对高频访问 IP 或非预期网段,可添加
ufw limit限速,或用fail2ban关联分析后自动封禁
内网互信需分层设计,UFW 不替代身份认证
UFW 是网络层防火墙,无法验证“谁在访问”,仅判断“从哪来”。真正的内网互信需叠加其他机制:
- 服务自身启用 TLS 双向认证(如 mTLS),确保客户端持有有效证书
- 敏感服务(如数据库、API)绑定内网监听地址(如
bind-address = 192.168.5.10),不监听0.0.0.0 - 跨网段管理通道(如 Ansible、Salt)统一走跳板机,跳板机上严格限制源 IP 和命令白名单
单纯依赖 UFW 允许某网段,等同于信任该网段下所有设备——一旦其中一台失陷,即成横向移动入口。










