完美解决 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

  • 拉取代码时报错:

    sh 复制代码
    # Mac 报错
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    @    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 ED25519 key sent by the remote host is
    SHA256:88E6751+dflNKvWOxzg2/98Vfg+P4ZWErIR7iTckhBM.
    Please contact your system administrator.
    # 注意这里:/Users/xxx/.ssh/known_hosts   known_hosts的路径
    Add correct host key in /Users/xxx/.ssh/known_hosts to get rid of this message.
    Offending ED25519 key in /Users/xxx/.ssh/known_hosts:2
    Host key for gitlab.hapi123.net has changed and you have requested strict checking.
    Host key verification failed.
    致命错误:无法读取远程仓库。
    
    请确认您有正确的访问权限并且仓库存在。
    sh 复制代码
    # windows 报错
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  
    @ 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 ED25519 key sent by the remote host is  
    SHA256:KuBLGFm/xkm0bpWVSGzQaT1Qqekl74Ui8TWnmtrEwpU.  
    Please contact your system administrator.  
    # 注意这里:/c/Users/xxx/.ssh/known_hosts   known_hosts的路径
    Add correct host key in /c/Users/xxx/.ssh/known_hosts to get rid of this message.  
    Offending ED25519 key in /c/Users/xxx/.ssh/known_hosts:3  
    Host key for gitlab.hapi123.net 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 rights
  • WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 翻译过来就是:警告:远程主机标识已更改!

    此报错是由于远程的主机的公钥发生了变化导致的。ssh 服务是通过公钥和私钥来进行连接的,它会把每个曾经访问过计算机或服务器的公钥(public key),记录在 ~/.ssh/known_hosts 中,当下次访问曾经访问过的计算机或服务器时,ssh 就会核对公钥,如果和上次记录的不同,OpenSSH 会发出警告。

    当两个设备第一次进行链接时,会在 ~/.ssh/konwn_hosts 中将被连接设备的公钥信息进行保存,后续再次链接时 OpenSSH 会核对公钥来进行一个简单的验证

  • 【解决方法】找到报错中 known_hosts 的路径,进入该目录,删除掉 known_hosts、known_hosts.old 文件,然后重新执行之前报错的命令,应该会提示是否确定授权,输入 yes 就行了。

    另外需要注意线上对应的公钥确实是你本机的 rsa 公钥。

    sh 复制代码
    # 进入目录(这个路径在上面的报错中有体现,有注释标记)
    $ cd /Users/xxx/.ssh
    
    # 移除文件
    $ sudo rm -rf known_hosts known_hosts.old
    
    # 然后再次执行报错的命令
相关推荐
程序开发阿元15 小时前
密码不进工具:一个独立开发者的服务器凭据管理办法
linux·ssh
布莱克60519 小时前
Swift 常量详解:从 let 到编译期优化
服务器·开发语言·ssh·swift·常量·let
布莱克60520 小时前
Swift 可选类型(Optionals)详解:从原理到实战
开发语言·安全·ssh·swift·optional·可选类型
时间售卖铺1 天前
Chrony与SSH实战:精准时间同步与安全远程登录
运维·安全·云原生·ssh
IT大白鼠2 天前
GitLab 未认证 RCE 应急实战CVE-2026-97229(CVSS 10.0)
网络·安全·gitlab
西风测评3 天前
安全的自动更新怎么做:minisign 签名、先验签后解析与防回滚
rust·ssh
程序员初一4 天前
Linux 远程桌面有四种做法
linux·ssh
程序开发阿元4 天前
1C1G 能跑什么:把留常驻服务和不留摆进一张内存表
linux·ssh
modelmd5 天前
离线安装与使用 vscode Remote SSH插件
ide·vscode·ssh
7177778 天前
Git自建用什么工具比较好:Gitea、Forgejo、GitLab CE与Gitee的选型对比
git·gitlab·gitea