我创build了一个新的实例(来自Amazon的64位AMI linux)创build了一个名为“mir”的新密钥对。 我下载了mir.pem并把它放在我的~/.ssh文件夹中。 我甚至做了ssh-add mir.pem 。
然后我试图ssh ubuntu@public_DNS_from_amazon
为什么它不工作!?
试试ssh [email protected] -i your-private.key ,而不是ssh-add the key。
哦,并确保你通过安全组允许TCP端口22。
安全组(防火墙configuration)是否允许SSH访问?
更具体地说 – 在AWSpipe理控制台页面上,select左侧面板中的安全组(底部)在右下方的面板上,select“入站”选项卡,并确保select“自定义TCP规则”。 input22作为端口号,点击“添加规则”button,然后点击“应用规则修改”button。 无需重新启动或重新启动您的实例,只需要启用TCP端口22入站
尝试使用root或ec2-user作为用户名。
您需要使用ec2-authorize default -p 22命令打开对您实例的ssh访问权限。 你做到了吗?
我的一些EC2盒子已经发生了这种情况。 一般来说,如果某个进程正在处理所有处理器,或者performance不佳,并且断开连接,则在尝试重新连接时,SSH可能无法启动。 通过AWS控制台重新启动该框通常会有所帮助。
也可以启动一个实例,而不将它与一个密钥对相关联。 你可以仔细检查一下,当你启动你的实例时,你是用你想要的密钥对来做的。 如果使用错误的密钥对启动实例,则需要重新启动实例。
要login到您的AMI框,请使用ec2-user 。 这意味着您将使用以下login名: ssh -i mir.pem ec2-user@public_dnslogin。