如何通过SSH登录EC2实例?AWS控制台是否可获取SSH凭据?
AWS EC2 SSH登录相关问题解答
1. 如何通过SSH登录EC2实例?
- 先完成前提检查:
- 持有实例关联密钥对的私钥文件(通常后缀为
.pem) - 实例安全组已开放22端口(SSH默认端口)的入站规则,允许你的本地IP访问
- 实例处于运行中状态,公网IP/弹性IP可正常访问
- 持有实例关联密钥对的私钥文件(通常后缀为
- 不同系统的登录操作:
- Linux/macOS终端:
- 先设置私钥文件权限(避免权限过高被SSH拒绝):
chmod 400 /path/to/your-key.pem - 执行登录命令:
ssh -i /path/to/your-key.pem ec2-user@<实例公网IP>
注:不同AMI的默认用户名不同,Ubuntu为ubuntu,Amazon Linux为ec2-user,CentOS为centos
- 先设置私钥文件权限(避免权限过高被SSH拒绝):
- Windows系统:
方案一(用PuTTY):- 用PuTTYgen将
.pem文件转换为.ppk格式 - 打开PuTTY,在Session面板输入实例公网IP,端口填22
- 进入Connection > SSH > Auth,选择转换后的
.ppk文件,点击Open登录
方案二(用Windows Terminal/PowerShell,需支持OpenSSH):
执行命令:ssh -i "C:\path\to\your-key.pem" ec2-user@<实例公网IP>
- 用PuTTYgen将
- Linux/macOS终端:
2. 能否通过AWS管理控制台获取SSH凭据,还是需要创建新凭据?
SSH登录EC2的核心凭据是密钥对,相关规则如下:
- 控制台无法找回已创建密钥对的私钥文件——私钥仅在密钥对创建时允许下载,一旦错过就无法从控制台获取,仅能查看公钥信息。
- 若没有当前实例关联密钥对的私钥,可通过两种方式解决:
- 创建新密钥对:用根账户权限在EC2控制台创建新密钥对,下载保存私钥后,将新密钥对的公钥添加到实例的
~/.ssh/authorized_keys文件中(可通过EC2串行控制台、挂载实例卷到其他实例修改,或用SSM Run Command操作) - 启用密码登录:若实例支持,可通过根账户权限重置实例系统用户密码(需实例已启用EC2Config/EC2Launch服务),之后用密码SSH登录
- 创建新密钥对:用根账户权限在EC2控制台创建新密钥对,下载保存私钥后,将新密钥对的公钥添加到实例的
内容的提问来源于stack exchange,提问作者Ryan
相关产品推荐
相关产品推荐

