我重新安装了我的服务器,我收到这些消息:

[user@hostname ~]$ ssh root@pong
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    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 RSA key sent by the remote host is
6e:45:f9:a8:af:38:3d:a1:a5:c7:76:1d:02:f8:77:00.
Please contact your system administrator.
Add correct host key in /home/hostname /.ssh/known_hosts to get rid of this message.
Offending RSA key in /var/lib/sss/pubconf/known_hosts:4
RSA host key for pong has changed and you have requested strict checking.
Host key verification failed.

我尝试了在网上找到的各种解决方案。我的known_hosts文件(通常在~/.ssh/known_hosts中)在/var/lib/ss /pubconf/known_hosts中。我试图编辑它,但它仍然是一个状态。我已经安装了ipa-client和Fedora 19。如何解决此警告?

到目前为止回答的所有答案都只适用于没有安装Freeipa的情况。

下面adrin的评论中关于freeipa的正确答案在这里。


当前回答

简单的一行程序解决方案,在mac上测试:

sed '/212.156.48.110/d' ~/.ssh/known_hosts > ~/.ssh/known_hosts

仅从已知主机中删除目标ssh主机IP。

其中212.156.48.110替换为目标主机IP地址。

原因:由于端口转发,目标IP已经为另一台机器所知道。在连接之前删除目标IP将解决此问题。

其他回答

只做:

cd /home/user/.Ssh / ->这里user将是您的用户名,例如/home/jon/。

然后

Gedit known_hosts &并删除其中的内容。

现在再次使用ssh,它应该可以工作。

在我的情况下,发生这种情况是因为我以前与一台具有相同ip(例如192.152.51.10)的机器进行ssh连接,系统正在考虑之前主机的RSA密钥(存储在/home/user_name/.ssh/known_hosts),这导致不匹配。

要解决此问题,必须删除之前存储的ip 192.152.51.10的RSA密钥。

ssh-keygen -f "/home/user_name/.ssh/known_hosts" -R 192.152.51.10

我有同样的错误发生后,我重新创建一个数字海洋Ubuntu映像。我使用以下命令,用我的服务器IP代替[IP_ADDRESS]

ssh-keygen -R [IP_ADDRESS]

更新了SSH密钥,收到上述消息是正常的。

只需编辑~/。Ssh /known_hosts并按照消息指示删除第4行

Offending RSA key in /Users/isaacalves/.ssh/known_hosts:4

或者使用ssh-keygen删除无效密钥

ssh-keygen -R "you server hostname or ip"

解决方案:

1-删除$HOME/。Ssh /known_hosts”指的是不可能连接到的主机。

2-执行以下命令:ssh-keygen - r "IP_ADDRESSorHOSTNAME"(将"IP_ADDRESSorHOSTNAME"替换为目标ip或目标主机名)

3-重试ssh连接(如果失败请检查。ssh目录的权限,它必须是700)