首页 > 解决方案 > ElasticBeanstalk“eb ssh”抛出错误:“主机密钥验证失败。”

问题描述

我正在尝试通过 SSH 连接到我的 ElasticBeanstalk 环境的 EC2 实例。我可以通过 SSH 连接到实例。然后我终止了实例并固定了新实例。然后当我再次尝试 SSH 时它坏了。这是我到目前为止所做的。

我在名为 MyanEatSSH 的 AWS 控制台中创建了一个 SSH 密钥对。

然后我设置运行以下命令的 SSH。

eb ssh --setup

我选择了我创建的密钥名称。

然后我下载了密钥并将其放在 ~/.ssh/ 文件夹下。

我可以通过 ssh 进入运行以下命令的 EC2 机器。

eb ssh

它按预期工作。当我在 EC2 控制台中删除实例时,问题就开始了。我删除了一个 EC2 实例。然后,Beanstalk 启动新实例,因为它具有运行状况检查和 Auto Scaling 功能。

然后我再次 ssh 进入新实例。这一次,我得到了以下错误。

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:enloOGgT3a/TLEoeibCGEbAmDogbpqHZWdy8qP5WyEE.
Please contact your system administrator.
Add correct host key in /Users/wai/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /Users/wai/.ssh/known_hosts:35
ECDSA host key for {ip} has changed and you have requested strict checking.
Host key verification failed.

作为修复它的尝试,我尝试设置 SSH 再次运行此命令,

eb ssh --setup

它仍然不起作用。我尝试创建一个新的 SSH 密钥并尝试再次设置它。它也不起作用。它抛出了同样的错误。出了什么问题,我该如何解决?

标签: amazon-web-servicesamazon-ec2sshamazon-elastic-beanstalk

解决方案


当您重新安装服务器或将弹性 IP 与先前实例的新启动服务器相关联时,其身份会发生变化,您将开始收到此消息。只需删除相关条目即可从 known_hosts 中删除密钥

ssh-keygen -R <IP>

推荐阅读