无法连接AWS EC2实例求助:SSH、Session Manager等方式均失败
解决AWS EC2实例连接失败的简单方法
如果你只是需要完成基础维护,下面两个方法简单可靠,优先推荐第一个:
方法一:通过AMI重新创建带密钥对的实例(最稳妥)
这个方法绕过现有实例的连接限制,通过镜像克隆创建一个可正常连接的新实例:
- 停止目标EC2实例(注意:停止会中断服务,确保业务可临时暂停)
- 在EC2控制台选中实例,右键选择「Image and templates」>「Create image」,填写镜像名称后确认创建
- 使用刚生成的AMI启动新实例:启动流程中在「Key pair (login)」步骤选择你已有的密钥对(没有的话直接创建新的)
- 新实例启动后,用SSH(通过密钥对)或Session Manager连接,完成维护操作
- 维护结束后,若需要,可将原实例的弹性IP绑定到新实例,再删除原实例
方法二:修复Session Manager连接(适合不想重建实例的场景)
如果实例能联网,可尝试修复SSM Agent和IAM权限:
- 确认实例所在VPC有互联网访问能力(比如带公网IP,或配置了NAT网关)
- 给实例关联的IAM角色添加
AmazonSSMManagedInstanceCore权限策略 - 登录实例所在VPC内的其他可连接实例,通过私有IP跳转安装SSM Agent(如果原实例没预装):
- Amazon Linux 2:
sudo yum install -y amazon-ssm-agent - Ubuntu:
sudo snap install amazon-ssm-agent --classic
- Amazon Linux 2:
- 启动SSM Agent:
sudo systemctl start amazon-ssm-agent - 回到EC2控制台,重新尝试Session Manager连接
快速排查EC2 Instance Connect失败
如果想尝试修复这个方式,先检查这几点:
- 实例有公网IP,或VPC配置了EC2 Instance Connect的服务端点
- 安全组允许入站22端口(可临时开放
0.0.0.0/0测试,完成后立即关闭) - 实例上安装了ec2-instance-connect包:
- Amazon Linux:
sudo yum install -y ec2-instance-connect - Ubuntu:
sudo apt install ec2-instance-connect
- Amazon Linux:
内容的提问来源于stack exchange,提问作者Microkid
相关产品推荐
相关产品推荐

