从我的密钥对的目录:
chmod 400 keypairname.pem
ssh -i keypairname.pem serveraddress
输出:
serveraddress: Permission denied (public key).
当我查看我的.pem上的权限时,我得到:
-r--------
我的密钥对的路径如下:
/Users/myname/Code/AWS/projectname/.private/keypairname.pem
“代码”是指向目录的符号链接,该目录实际上是从桌面向下两级:
~/Desktop/Stuff/Code/...etc
从上面可以看出,为什么EC2实例仍然拒绝我使用ssh访问它的努力?据我所知,我已经满足了我的密钥对文件不公开的要求。
答案 0 :(得分:2)
您需要传递用户。否则它会尝试使用可能不存在的用户。
例如,对于Amazon Linux AMI,请尝试:
ssh -i keypairname.pem ec2-user@serveraddress
用户因您使用的Linux发行版而异。这个list包含一些常见的内容。