一、检查安全组配置
安全组是AWS EC2实例的虚拟防火墙,若未开放SSH端口会导致连接失败。需执行以下步骤:
- 登录AWS控制台,进入EC2实例的安全组管理页面
- 添加入站规则:协议类型选择SSH(TCP端口22),源地址设为0.0.0.0/0或指定IP段
- 使用CLI验证规则:
aws ec2 describe-security-groups --group-ids [组ID]
二、验证密钥权限与可用性
密钥文件问题占SSH连接失败的30%以上,需重点排查:
- 使用
chmod 600 key.pem
设置私钥文件权限 - 确认创建实例时绑定的密钥对与本地使用的私钥匹配
- 通过实例元数据重置密钥:停止实例→修改用户数据→导入新密钥
三、排查实例状态与网络
实例运行状态和网络配置直接影响连接成功率:
- 检查实例状态是否为running,必要时重启实例
- 确认公网IP未变更,停止/重启实例会导致动态IP变化
- 使用
ping
测试网络连通性,排除本地防火墙干扰
四、检查SSH服务配置
服务端配置错误会导致认证失败:
/etc/ssh/sshd_config PermitRootLogin yes PasswordAuthentication yes Port 22
- 通过串行控制台登录检查SSHD服务状态:
systemctl status sshd
- 修改配置后需重启服务:
sudo service sshd restart
SSH连接失败需系统化排查网络、安全策略和服务配置。建议按照安全组→密钥→实例状态→服务配置的顺序逐步验证,同时注意AWS免费套餐实例的资源限制可能导致意外中断。通过结合控制台操作与命令行诊断,可快速定位并解决大多数连接问题。
本文由阿里云优惠网发布。发布者:编辑员。禁止采集与转载行为,违者必究。出处:https://aliyunyh.com/548660.html
其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。