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

[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的正确答案在这里。


当前回答

解决方案:

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

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

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

其他回答

使用该命令:

truncate -s 0 /home/SYSTEM_NAME/.ssh/known_hosts

我使用了mockinterface的解决方案,尽管sed -i并没有很好地工作 我用vim手动删除了这行:

sudo vim /var/lib/sss/pubconf/known_hosts

您可以使用任何其他您想要的文本编辑器,但可能需要显示您的管理权限

如果你试图用这个命令连接到端口2222上运行的docker容器,你会得到错误

mian@tdowrick2~$ ssh pos@localhost -p 2222

然后要解决这个问题,在您的本地计算机上(即主机而不是容器)转到cd ~/。Ssh /然后用文本编辑器打开known_hosts文件。删除以[localhost]:2222开头的行并保存文件。现在再次尝试ssh

mian@tdowrick2~$ ssh pos@localhost -p 2222

错误将消失,但你必须这样做,每次容器重新启动。

当您重新安装服务器时,它的标识发生了变化,您将开始收到这条消息。Ssh无法知道您是否更改了它所连接的服务器,或者在您的网络中添加了一个中间服务器来嗅探您的所有通信—所以它会提醒您注意这一点。

通过删除相关条目,简单地从known_hosts中删除键:

sed '4d' -i /var/lib/sss/pubconf/known_hosts

4d是关于违规RSA…known_hosts:4的账号

这里的其他答案都很好,不管怎样,我通过删除~/.ssh/known_hosts解决了这个问题。这当然可以解决问题,但可能不是最好的方法。