1

我在 EY 上的 ruby​​ on rails 部署遇到了一些大问题。支持人员说我需要 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 the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
80:4c:5f:dd:98:bb:cb:01:6c:a9:11:41:29:56:66:86.
Please contact your system administrator.
Add correct host key in /Users/jameshughes/.ssh/known_hosts to get rid of this message.
Offending key in /Users/jameshughes/.ssh/known_hosts:1
RSA host key for ec2-184-73-167-153.compute-1.amazonaws.com has changed and you have requested strict checking.
Host key verification failed.

[Process completed]

如何将正确的密钥添加到 Known_hosts 文件?

4

3 回答 3

11

在您喜欢的文本编辑器中打开known_hosts,找到“ec2-184-73-167-153.compute-1.amazonaws.com”条目并删除整行。下次您 ssh 进入时,它会将正确的密钥添加到known_hosts文件中。

请注意,此错误是出于安全目的,因此我假设您知道没有发生“中间人”攻击并且服务器密钥实际上已更改。如果没有,可能还有其他事情发生。

于 2011-06-30T18:25:19.447 回答
0

要解决您的“权限被拒绝(公钥)”问题,您需要通过工具菜单将您的公钥添加到engineyard,然后将您的更改应用到您的环境(通过单击应用)。

希望有帮助。

于 2012-07-25T20:39:44.687 回答
-3

更新

请参阅下面@womble 的评论和我的回复。正如@womble 所指出的,如果您使用,StrictHostKeyChecking no您将对中间人的攻击持开放态度。我已经与 EngineYard 讨论过这个问题(我上次检查时,StrictHostKeyChecking no是他们在帮助文档中推荐的内容)。我相信使用StrictHostKeyChecking=ask是一个更好的选择。有没有人知道是否有比使用更好的解决方案StrictHostKeyChecking=ask

我遇到了同样的问题,这似乎对我有用。您只需要在“'~/.ssh/config'':”之后添加“StrictHostKeyChecking no”即可

Engine yard 有一篇很好的文章。中间人问题接近底部。 http://docs.engineyard.com/ssh-keys-and-configuration.html

现在,当我 SSH 时,我仍然收到警告,但能够访问服务器。停止并重新启动实例后,我开始收到警告。

于 2011-06-30T22:31:04.660 回答