我可以通过我提供的pem
文件连接到我的 Amazon EC2 实例。
我这样做
ssh -i <mykeyname>.pem ubuntu@<myexternalip>
它运作正常。
但现在我需要无密码登录我的实例,所以我创建了一个密钥对,如图所示here
并将我的.pub
文件发送到我的远程实例,并将其放在名为.ssh
的{{1}}目录下,但我仍然无法连接!
我不断收到错误消息:
authorized_keys
有谁能告诉我我做错了什么?默认情况下, EC2实例是否禁止所有其他形式的登录(除.pem文件外)?
提前感谢。
答案 0 :(得分:1)
事实证明它根本不是 SSH 问题。问题在于,当我拨打sudo
时,我忘记了用户更改为 root ...显然我没有为 root设置密钥用户所以它一直在我身上失败......
我改为使用sudo -u actual_user
来解决它。
感谢git @ freenode上的 cmn 帮助我看到这一点。
答案 1 :(得分:0)
我建议你检查ssh输出(ssh -v),如果你还没有。有时,调试消息可以帮助查明问题。也就是说,这感觉就像文件许可问题。确保非root用户可以读取.pub文件。