本文记录最近 github 推送或拉取代码时提示 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 而失败的解决方法
报错提示如下
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 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 isSHA256:uNiVztksCsDhcc0u9e8BujQXVUpKZIDTMczCvj3tD2s.Please contact your system administrator.Add correct host key in /c/Users/lindexi/.ssh/known_hosts to get rid of this message.Offending RSA key in /c/Users/lindexi/.ssh/known_hosts:2Host key for github.com has changed and you have requested strict checking.Host key verification failed.fatal: Could not read from remote repository.
Please make sure you have the correct access rightsand the repository exists.
最简单的方式就是删除上面提到的 known_hosts
文件,例如我的文件是 /c/Users/lindexi/.ssh/known_hosts
路径,直接使用 rm 命令删除,代码如下
rm /c/Users/lindexi/.ssh/known_hosts
还请在你电脑上执行以上命令的时候,替换为你自己的电脑上的路径
执行完成之后,重新推拉代码,可以看到以下提示信息,只需要输入 yes 回车即可
The authenticity of host 'github.com (20.205.243.166)' can't be established.ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.This key is not known by any other namesAre you sure you want to continue connecting (yes/no/[fingerprint])?
以上步骤就是在将 github 添加到 known_hosts
文件里
也就是下一次推拉代码就不需要再次执行以上步骤
为什么有这样的事情呢?这是因为在 2023.03.24 更换了 GitHub 的 RSA 的 Key 值。因为 GitHub 团队发现自己的 Key 泄露了。详细请看 We updated our RSA SSH host key The GitHub Blog

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。 欢迎转载、使用、重新发布,但务必保留文章署名 林德熙 (包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我 联系。