1、问题 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
Windows 系统 cmd 登陆时出现如下错误:

2、原因
在 Linux 根节点上有 .ssh 文件夹:

在 Windows 当前用户根节点上也有 .ssh 文件夹:

其中 known_hosts 是记录远程主机的公钥的文件,一个新的 Linux 服务器,保存的公钥还是初始的系统公钥,在 ssh 链接的时候首先会验证公钥,如果公钥不对,就会报错!
3、解决办法
方法一:
将 known_hosts 文件中的与登录错误的 IP 的公钥删除即可,,再 ssh 登录就登录成功了。
方法二:
将 known_hosts 文件中的内容清空即可,但不建议使用此方法,里面还保存有其他机子的公钥。
方法三:
使用 shh-keygen 命令 (建议使用此方法)
比如:要将 122.51.xxx.xxx 的公钥信息清除,使用命令(请自己将 122.51.xxx.xxx 替换成自己的 IP 或域名):
ssh-keygen -R 122.51.xxx.xxx
结果如下图(Linux 相同):

完毕之后就可以了,再次登陆就后要求确认是否公钥:
C:\WINDOWS\system32>ssh 用户名(Linux 服务器的)@122.51.xxx.xxx

此时,ssh 链接错误成功解决。
版权声明:本文为weixin_44462664原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。