Amazon ec2 AWS EC2 SSH无法解析提供的主机名nodename或servname,或者不知道

Amazon ec2 AWS EC2 SSH无法解析提供的主机名nodename或servname,或者不知道,amazon-ec2,Amazon Ec2,是的,多年来有很多关于这个问题的帖子。他们的解决方案对我不起作用 在设置Elastic IP和Cloudfront之前,我从Mac终端下载ec2实例时没有遇到任何问题。这一切进展顺利,该实例的原始IP已被替换,它正在为我的域的网页提供服务 我以为我要为新IP做的就是将SSH字符串中的公共DNS更改为新的。然后我得到了错误。如果我使用旧的,我会得到同样的错误。没有DNS问题,因为该站点已工作数天。此外,在Webstorm中,我在部署首选项中对主机进行了更改,并且我可以使用与以前相同的.pem文件将

是的,多年来有很多关于这个问题的帖子。他们的解决方案对我不起作用

在设置Elastic IP和Cloudfront之前,我从Mac终端下载ec2实例时没有遇到任何问题。这一切进展顺利,该实例的原始IP已被替换,它正在为我的域的网页提供服务

我以为我要为新IP做的就是将SSH字符串中的公共DNS更改为新的。然后我得到了错误。如果我使用旧的,我会得到同样的错误。没有DNS问题,因为该站点已工作数天。此外,在Webstorm中,我在部署首选项中对主机进行了更改,并且我可以使用与以前相同的.pem文件将SFTP转换到实例中

ssh -i "path/to/ubuntu.pem" ubuntu@ec2-xx.xx.xxx.xxx.us-west-1.compute.amazonaws.com
@符号后面的部分是我的ec2实例的副本


所以问题是,当我移动到Cloudfront和弹性IP时,除了IP之外,还有什么变化?为什么这只影响SSH而不影响SFTP?为什么常规登录会成为一个需要解决的噩梦?

不是一个优雅的解决方案,但我将我的pem密钥放入home/ubuntu/.ssh/authorized_密钥中,并可以使用弹性IP登录:

ssh-i“path/to/ubuntu.pem”ubuntu@xx.xx.xxx.xxx

我仍然无法使用原始字符串登录:

ubuntu@ec2-xx.xx.xxx.xxx.us-west-1.compute.amazonaws.com


我想知道原因和方法。

这可能是由于ssh命令不正确造成的。这可能是因为您试图从.pem文件不在的另一个文件夹访问ssh

如果您在ssh命令中使用弹性IP地址而不是公共DNS,是否有效?对。在EC2实例中,公共DNS地址更改为弹性IP,我只是用弹性IP替换了旧的地址。我真的不明白这怎么会让宋承宪崩溃。我已经重新启动了实例。我重新启动了Webstorm。今天早上,我将回到旧的Windows习惯,在绝望中重新启动我的Mac:-)我重新启动了我的计算机,我相信这不会是问题,我禁用了Cloudfront,没有任何帮助。