远程ubuntu20.04服务器重启后,本地机器ssh连接不上服务器,可以对本地mac使用rm ~/.ssh/known_hosts 命令

远程服务器是ubuntu20.04,本地机器是mac,远程服务器重启后,本地机器ssh连接不上ubuntu服务器,ping远程ubuntu服务器的ip地址也ping不通。

事发突然,之前本地机器mac的连接一直是正常的,什么都没有做,就是把远程服务器ubuntu20.04重启一下,发现本地机器ssh连接不上服务器。

奇怪的是,ubuntu20.04服务器网络一切正常,能上网,而且内网里面,ping ip地址也可以ping通,内网里面通过ssh也能连上ubuntu20.04服务器。

找不到原因,于是把远程的ubuntu20.04 服务器里面的ssh卸载重装,防火墙关闭,还不行!

接着把本地的mac重启,再试图连接ssh到ubuntu20.04 服务器,出现了一个报错信息。

报错信息为:

WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!

等等一大段信息,查找百度,于是找到这篇文章

关于ssh登录出现异常警告:WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! - ​​​​​​JohnChain - 博客园
按照文章提示,使用 rm ~/.ssh/known_hosts 命令删除本地mac的known_hosts文件,于是再次ssh到ubuntu服务器,这次就可以远程连上了。

查阅上面文章,原因如下:

ubuntu重启导致所有与原系统建立过ssh连接的系统都无法再建立连接,因为在于原系统建立首次连接时,双方相互记录了对方的公钥(ssh基于非对称密钥技术),在ssh服务主机重装系统后,公钥改变了,任以旧版本公钥的主机自然是无法与新系统连接的。


解决办法如下:

直接使用

rm ~/.ssh/known_hosts 

命令 ,删除删除本地mac 中的 ~/.ssh/known_hosts文件;

强调一下重点:是删除本地机器的~/.ssh/known_hosts文件!!!

不是你要连接的远程服务器里面的~/.ssh/known_hosts文件,我ubuntu重装ssh后,~/.ssh文件夹下直接是空的。

或者如果可以判断出known_hosts中原ssh服务器的公钥,删去那部分也可以。
 

参考链接:

关于ssh登录出现异常警告:WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! - JohnChain - 博客园

记一次linux重装后ssh导致的问题: IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!_神在异乡-CSDN博客

猜你喜欢

转载自blog.csdn.net/ccsodefhy/article/details/122716225
今日推荐