SSH登录异常(远程git仓库修改ssh连接主机ip导致ssh连接异常)的解决方案
今天在向我腾讯工蜂git管理仓库推送代码时出现下面的错误:
$ git push@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 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 fingerprintforthe RSA key sent by the remote host isSHA256:O/rHOxiTfD6BGBM8iwioUtqx8qHDxxd3uYn1hee4/Rc.Please contact your system administrator.Add correct host keyin/c/Users/Administrator/.ssh/known_hosts to get rid of this message.Offending RSA keyin/c/Users/Administrator/.ssh/known_hosts:7RSA host keyforgit.code.tencent.com has changed and you have requested strict checking.Host key verification failed.fatal: Could notreadfrom remote repository.Please make sure you have the correct access rightsand the repository exists.
在遇到这个问题时,我的第一感觉是腾讯工蜂7月20号的更新导致我本地ssh连接出现了异常。
凭着自己半桶水的英文理解,我对这段英文的解读是,ssh会把你每个你访问过计算机的公钥(public key)都记录在~/.ssh/known_hosts。当下次访问相同计算机时,OpenSSH会核对公钥。如果公钥不同,OpenSSH会发出警告, 避免你受到DNS Hijack之类的攻击。我们通过ssh登录过一次远程仓库后就会把ssh信息记录在本地的~/.ssh/known_hsots文件中,切换该系统后再用ssh访问这台主机就会出现冲突警告,需要手动删除修改known_hsots里面的内容。
因此我在系统盘找到.ssh文件夹下的known_hosts 文件删掉对应的冲突链接主机记录
删除完再推送本地仓库带代码,效果如下:
至此,git重新与腾讯工蜂系统建立了一条新的主机连接记录,可以重新提交代码啦!
写在最后:
第一次把自己遇到的问题写出来,可能存在少许纰漏。后续会有更多的总结分享,欢迎各位大牛指正!