首页/安全/安全加固速查/ufw 状态与默认策略(Ubuntu/Debian)
防火墙与访问控制50 条

ufw 状态与默认策略(Ubuntu/Debian)

ufw 是 netfilter 的易用前端;加固第一步是确认启用状态与默认策略——入站默认拒绝,仅放行必要端口。

安全加固速查安全更新于 2026-10-13

ufw 的默认策略才是关键

ufw 是 Debian/Ubuntu 上对 nftables 或 iptables 的易用封装,规则写法简单,但真正决定暴露面的是默认策略:入站默认接受时,只有被显式拒绝的端口是关的;入站默认拒绝时,只有被显式放行的是开的。后者是基线要求的姿态。核查时除了看启用状态,还要看默认策略与规则编号,规则编号也是后续删除操作的依据。

基本信息

加固项防火墙启用与默认策略收敛
适用平台Linux(Ubuntu、Debian 及其衍生版)
权限要求root 或 sudo
达标判据状态为 active,默认入站 deny(或 reject)
配置文件/etc/ufw/ 下的 before.rules、user.rules 等

典型使用场景

  • 新装云主机快速建立最小暴露面
  • 从“全部放行”改为“逐项放行”的收敛过程
  • 临时排障放行后核对是否已回收
  • 巡检确认防火墙没有被误关或链路规则被清空
  • 与云安全组配合做双层控制

状态与默认策略

状态与默认策略
sudo ufw status verbose        # 状态、默认策略、日志级别、规则列表
sudo ufw status numbered       # 带编号,便于精确删除
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow from 10.0.0.0/8 to any port 22 proto tcp   # 先放行管理来源
sudo ufw enable                # 顺序很重要:先放行再加严

默认策略组合

入站出站含义与适用
denyallow基线推荐:只放行必要入站,出站不受限
rejectallow回绝而非静默丢弃,便于对端快速感知
allowallow默认全开,不达标
denydeny出站也收严,需逐项放行更新源与 DNS,维护成本高
ufw enable 会立即套用默认策略:远程操作前必须先放行当前管理端口与来源,再启用,否则会把自己关在门外。已有的 SSH 会话可能不会立刻断开,但重连就会失败,最稳妥的做法是同时保留云控制台等带外通道。
ufw 的规则最终落到 /etc/ufw/user.rules,用 ufw 命令管理比手改文件可靠。若机器上同时装了 firewalld 或手工 nftables 规则,两套体系会互相覆盖,应先统一管理入口,避免出现“规则写了不生效”的假象。
云主机上还有一层安全组:主机防火墙与安全组是两套独立控制,任一放行都可能导致端口可达。核查要做双层确认,既要看 ufw 的规则列表,也要看云控制台的安全组入方向规则,两边都收敛才能真正减少暴露面。

易错点

  • 先 enable 后放行 SSH,直接失去远程登录能力,正确顺序是先放行再启用
  • 只看 status 不看 verbose:默认策略恰好是 allow 时,看起来规则很少却处处开着的
  • 用 ufw allow 22 放行全来源,忘记限源,管理端口长期对公网开放
  • 删规则时用规则内容而非编号,内容相近的规则会被误删

数据来源与参考

  • Ubuntu 官方文档:UFW - Uncomplicated Firewall
  • CIS Ubuntu Linux Benchmark:防火墙章节

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌