执行sudo ufw allow 'Nginx Full'后无法SSH连接AWS服务器求助
解决AWS服务器执行
ufw allow 'Nginx Full'后无法SSH连接的问题 别担心,这个问题很常见,咱们一步步来搞定它:
方法1:通过EC2 Instance Connect直接在浏览器连服务器
这是最快捷的方式,只要你的实例满足基础条件(比如用了Amazon Linux 2、Ubuntu 18.04+这类支持的系统,且安全组允许EC2 Instance Connect的IP段访问22端口):
- 登录AWS控制台进入EC2服务,找到你的目标实例
- 点击实例卡片上的连接按钮,切换到EC2 Instance Connect标签页
- 直接点击连接,就能在浏览器里打开服务器的终端会话
方法2:用AWS Systems Manager的Session Manager连接
如果第一种方法行不通,试试这个方案——前提是你的实例预装了SSM代理(Amazon Linux 2默认自带,其他主流系统也大多支持),且实例绑定的IAM角色有SSM相关权限:
- 进入AWS Systems Manager控制台,选择左侧菜单的会话管理器
- 点击启动会话,选中你的实例后点击启动会话,就能进入服务器终端
进入服务器后修复UFW规则
成功连进服务器后,咱们就可以修正防火墙设置了:
- 先查看当前UFW规则,确认SSH端口(22)是否被放行:
sudo ufw status - 如果看不到22端口的允许规则,添加SSH放行规则:
也可以明确指定端口和协议:sudo ufw allow sshsudo ufw allow 22/tcp - 要是你想撤销之前添加的
Nginx Full规则,执行这条命令:sudo ufw delete allow 'Nginx Full' - 最后重载UFW确保规则生效(虽然添加规则后一般自动生效,但重载更稳妥):
sudo ufw reload
额外检查:EC2安全组设置
有时候问题不只是UFW,也要确认实例的安全组是否允许SSH入站:
- 回到EC2实例详情页,点击安全组进入配置页面
- 在入站规则里,确认存在允许22端口访问的规则(可以限制为你的本地IP,更安全),没有的话就添加一条
做完这些操作,你应该就能重新通过SSH连接服务器了。
内容的提问来源于stack exchange,提问作者shikha
相关产品推荐
相关产品推荐

