SSH 到 EC2 实例期间权限被拒绝(公钥)[重复]

Posted

技术标签:

【中文标题】SSH 到 EC2 实例期间权限被拒绝(公钥)[重复]【英文标题】:Permission denied (public key) during SSH to EC2 instance [duplicate] 【发布时间】:2018-06-08 10:45:54 【问题描述】:

我的密钥对和可能的 SSH 权限有问题,因为我无法再通过 SSH 连接到我的 EC2 实例。

我执行以下命令:

ssh -i /Users/Matt/Downloads/private-key.pem ec2-user@XX.XXX.XXX.XXX

请记住,我刚刚在 AWS 管理控制台中创建了这个密钥对,它将密钥 .pem 文件下载到我的下载文件中。然后我在回复“是”以继续连接后收到以下错误消息。

Failed to add the host to the list of known hosts 
(/Users/Matt/.ssh/known_hosts).
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/Users/Matt/Downloads/private-key.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/Matt/Downloads/private-key.pem": bad permissions
Permission denied (publickey).

好的,所以我花了一天的大部分时间来解决这个问题,并尝试检索 pub 文件,将其作为密钥对导入等,但我仍然获得权限被拒绝(公钥)或提示输入非-existent 实例关联密码。我相当肯定这一定是我自己的 SSH 权限的问题,但我迷路了。

这是我在 ssh -v 之后在终端中得到的内容

 usage: ssh [-XXXXXXXXXXXXXXX] [-b bind_address] [-c cipher_spec]
       [-D [bind_address:]port] [-E log_file] [-e escape_char]
       [-F configfile] [-I pkcs11] [-i identity_file]
       [-L [bind_address:]port:host:hostport] [-l login_name] [-m 
 mac_spec]
       [-O ctl_cmd] [-o option] [-p port]
       [-Q cipher | cipher-auth | mac | kex | key]
       [-R [bind_address:]port:host:hostport] [-S ctl_path] [-W host:port]
       [-w local_tun[:remote_tun]] [user@]hostname [command]

任何帮助将不胜感激。

【问题讨论】:

SO 是针对编程问题,而不是关于使用或配置 Linux 的问题。 ServerFault,com, SuperUser.com 或 unix.stackexchange.com 将是解决此类问题的更好地方。 检查您的 pem 文件的权限。它应该是 400,如下面的答案所述。但也要确保它归您当前的系统用户所有。 【参考方案1】:

答案 - 仅供参考 - 下载 .pem 文件后,您只需运行以下命令即可通过 SSH 连接到您的实例。

chmod 400 /Users/Matt/Downloads/private-key.pem

【讨论】:

以上是关于SSH 到 EC2 实例期间权限被拒绝(公钥)[重复]的主要内容,如果未能解决你的问题,请参考以下文章

ssh - Amazon EC2 上的权限被拒绝(公钥)

Amazon EC2 实例“权限被拒绝(公钥)”

无法通过 SSH 连接到 EC2:权限被拒绝(公钥)

尝试使用 RSA 密钥通过 SSH 连接到 EC2,获取:不正确的 RSA1 标识符...权限被拒绝(公钥)

AWS EC2 的 SSH 问题 - 权限被拒绝:公钥

EC2 ssh 权限被拒绝(公钥、gssapi-keyex、gssapi-with-mic)