Amazon web services can';在分配一个弹性ip之后,t ssh

Amazon web services can';在分配一个弹性ip之后,t ssh,amazon-web-services,amazon-ec2,Amazon Web Services,Amazon Ec2,我配置了我的实例。它已经开始运行了。在分配弹性IP之前,我可以使用我的密钥(由chef/knife提供)进行ssh。例如,这项工作(在EIP之前): ssh-F.ssh/config ec2 ww xx yy zz.us-west1.computer.amazonaws.com 分配EIP后,我得到: 权限被拒绝(公钥) 错误消息,因为它正在检查我的主文件夹中的密钥而不是项目目录 我甚至在EIP中指定了配置目录: ssh-F.ssh/configubuntu@ww.xx.yy.zz-v 返回“连

我配置了我的实例。它已经开始运行了。在分配弹性IP之前,我可以使用我的密钥(由chef/knife提供)进行ssh。例如,这项工作(在EIP之前):

ssh-F.ssh/config ec2 ww xx yy zz.us-west1.computer.amazonaws.com

分配EIP后,我得到:

权限被拒绝(公钥)

错误消息,因为它正在检查我的主文件夹中的密钥而不是项目目录

我甚至在EIP中指定了配置目录:

ssh-F.ssh/configubuntu@ww.xx.yy.zz-v

返回“连接超时消息”


当我使用Elastic Fox时,我可以看到EIP已正确关联。我是否缺少拒绝SSH到EIP的AWS设置?

一旦启动EC2实例,它将分配一个公共和私有IP地址。实例的私有IP地址在该实例的生存期内永远不会更改。但是,在某些情况下,其公共dns地址可能会发生变化


因此,将EIP关联到任何实例后,使用该IP登录到您的计算机。

当您将弹性IP地址关联到实例时,它将为其分配一个新的公共DNS地址。需要注意的一点是,您的已知主机存储在
/Users/stuart/.ssh/known_hosts
文件中,一旦分配弹性IP地址并尝试将其ssh返回到实例中,它就无法工作,因为公共域名已更改。你需要把这个换成新的。 要执行此操作,请使用以下命令:

ssh-keygen -R ec2-xx-xxx-xxx-xx.eu-central-1.compute.amazonaws.com
请记住,这是关联IP地址后分配给服务器的新公共DNS名称。
干杯

另一方面,我确保aws安全组中的端口22完全打开,现在似乎正在工作。在我的bash脚本中添加了一个等待函数,它最终选择了它。系统已经连接到弹性IP,当我们通过ssh连接到节点时,它会尝试连接到旧IP,因为我们在最初解析域名时添加了指纹。@sarat-您应该更新指纹,我将删除与该域/节点关联的finger并再次尝试ssh,这将为ssh添加新的指纹。