我配置了我的实例。它正常运行。在分配弹性IP之前,我可以使用我的密钥(由厨师/刀提供)。例如,这有效(在EIP之前):
ssh -F .ssh/config ec2-ww-xx-yy-zz.us-west1.computer.amazonaws.com
分配EIP后,我得到一个:
Permission denied (publickey)
错误消息,因为它检查我的主文件夹中的密钥而不是项目目录。
我甚至将配置目录指定为EIP:
ssh -F .ssh/config ubuntu@ww.xx.yy.zz -v
返回“连接超时消息”。
当我使用Elastic Fox时,我可以看到EIP正确关联。我错过了拒绝SSH到EIP的AWS设置吗?
答案 0 :(得分:8)
启动EC2实例后,它将分配公共和私有IP地址。实例的私有IP地址在该实例的生命周期内永远不会更改。 但是,在某些情况下,其公开DNS地址可能会发生变化。
因此,在将EIP与任何实例关联后,请使用该IP登录您的计算机。
答案 1 :(得分:0)
将弹性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名称。 干杯!