VPS 开启UWF防火墙后导致 SSH 被阻断的修复方法
Lazy loaded imageVPS 开启UWF防火墙后导致 SSH 被阻断的修复方法
字数 734阅读时长 2 分钟
2025-6-1
2025-9-28
AI智能摘要
GPT
VPS开启UFW阻断SSH,通过VNC修复并预设规则。

✨ 前言与总结

在使用 VPS 时,很多人会配置防火墙来增强安全性。但如果不熟悉工具的默认行为,很容易把自己“锁”在服务器外面。本文就以一个常见的案例为例:在 Ubuntu 系统上启用 UFW(Uncomplicated Firewall)后,因为没有事先放行 SSH 端口,导致远程连接直接中断
各种类型供您挑选,包您满意
✈️
机场测评与安利
机场测评与安利

📝 主要内容

问题背景

  • 防火墙工具:UFW
  • 系统环境:Ubuntu / Debian 系
  • VPS 服务商:RackNerd
  • 现象:
      1. 输入 ufw enable 开启防火墙后,SSH 会话立刻断开。
      1. 再次尝试通过 ssh user@ip 登录时,连接超时。
      1. 原因是:UFW 默认策略是在没有规则的情况下阻断所有入站流量,包括 22 端口的 SSH

修复思路

既然 SSH 无法直接连接 VPS,就必须通过服务商提供的 控制台 / VNC 功能进入服务器进行修复。大多数 VPS 提供商(如 RackNerd、Vultr、Linode)都会在后台面板中提供 VNC,允许用户直接操作系统,就像坐在服务器前面一样。

RackNerd 环境下的解决方案

  1. 登录 RackNerd 控制面板
      • 找到对应的 VPS 实例。
  1. 进入 VNC Console
      • 打开 RackNerd NerdVM Panel
      • 在 VPS 管理页面,点击 VNCConsole,并打开HTML5的VNC。
      • 进入后会看到一个远程终端界面,即便 SSH 被封锁,也可以直接输入命令。
      💡
      VNC 使用有问题也可以使用Resuce的系统进入
  1. 修改 UFW 配置
      • 首先关闭防火墙(恢复 SSH 可用性):
        • ufw disable
      • 然后添加放行 SSH 的规则:
        • ufw allow 22/tcp
      • 如果你修改过 SSH 端口(例如 2222),则需要对应放行:
        • ufw allow 2222/tcp
      • 确认规则是否生效:
        • ufw status
  1. 重新开启防火墙
    1. 确保 SSH 已经在放行列表后,再安全地启用防火墙:
      ufw enable
  1. 测试 SSH 登录
    1. 在本地重新执行:
      ssh user@your_vps_ip
      如果成功连接,说明修复完成。

避免再次出错的小技巧

  • 在启用防火墙之前,一定要先放行 SSH 端口
    • ufw allow 22/tcp
  • 可以顺带放行常用服务端口,例如:
    • HTTP: ufw allow 80/tcp
    • HTTPS: ufw allow 443/tcp

📖 延伸阅读

暂无

🤗 总结归纳

当你在 VPS 上第一次使用 UFW 时,如果直接 ufw enable,默认会阻断所有入站流量,包括 SSH,这就导致无法远程连接。解决方法是通过 VPS 服务商提供的 VNC 控制台,关闭防火墙并重新配置规则,再放行 SSH 端口后开启防火墙。
各种类型供您挑选,包您满意
✈️
机场测评与安利
机场测评与安利

📎 参考文章

主要参考 暂无
 
💡
还可以加入Telegram的七行的小仓库|互联网记忆|博客 七行 技术交流群 找到更多小技巧哦🥰,还可以在聊天群探讨各种问题❓
欢迎在底部评论区分享您的想法和经验,让我们一起共同探讨,共同进步!
 

评论
Loading...