Ubuntu 重置 ufw 需三步:sudo ufw reset 清规则并还原默认策略,sudo ufw disable 停用防火墙,sudo systemctl disable ufw 禁止开机自启,并验证状态、服务及 iptables 规则是否清空。

Ubuntu 系统默认使用 ufw(Uncomplicated Firewall)作为防火墙管理工具。关闭并重置 ufw,不只是停用服务,还包括清空所有自定义规则、还原默认策略,并确保开机不再自动启用——三步到位才算真正“重置”。
确认 ufw 当前状态
先看它是不是真在运行:
- 运行
sudo ufw status verbose—— 若显示 Status: active,说明已启用;若为 inactive,可能已关闭,但仍需检查是否残留规则或服务未卸载 - 补查服务状态:
sudo systemctl is-active ufw应返回inactive;sudo systemctl is-enabled ufw应返回disabled(否则下次开机仍会启动)
执行关闭 + 重置操作
仅用 sudo ufw disable 不够彻底:它停用规则但不清理配置,且部分系统中 ufw 服务进程仍处于 active (exited) 状态。推荐组合操作:
-
sudo ufw reset—— 清空所有用户添加的规则,还原默认策略(incoming deny / outgoing allow),同时禁用日志 -
sudo ufw disable—— 停用防火墙,移除运行时钩子 -
sudo systemctl stop ufw—— 显式停止 ufw 服务单元(解决某些版本中disable后服务状态未同步的问题) -
sudo systemctl disable ufw—— 彻底取消开机自启,避免重启后意外激活
验证是否真正重置完成
做完上述步骤后,逐项确认:
-
sudo ufw status verbose→ 输出应为 Status: inactive,且下方无任何规则列表 -
sudo systemctl is-active ufw→ 返回inactive -
sudo systemctl is-enabled ufw→ 返回disabled -
sudo iptables -L INPUT -n | head -5→ 应只显示默认链头,无 ufw 插入的规则(如ufw-before-input等)
额外提醒:远程操作务必谨慎
如果你是通过 SSH 连接服务器,重置前请确保已允许 SSH 端口(如 sudo ufw allow 22),或预留本地控制台访问方式。ufw 重置本身不会断开连接,但若误删了 SSH 规则又没设默认允许,ufw enable 后可能被锁住。


















