完美解决 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_hostsknown_hosts.old 文件,然后重新执行之前报错的命令,应该会提示是否确定授权,输入 yes 就行了。

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

    sh 复制代码
    # 进入目录(这个路径在上面的报错中有体现,有注释标记)
    $ cd /Users/xxx/.ssh
    
    # 移除文件
    $ sudo rm -rf known_hosts known_hosts.old
    
    # 然后再次执行报错的命令
相关推荐
oneslide1 小时前
openssh10.0p1 源码构建安装 & rpm安装包构建
ssh
爱宇阳19 小时前
从零开始部署 GitLab CE 18.4.2:Docker Compose 新手教程
docker·容器·gitlab
mixboot1 天前
Ubuntu 24.04 修改 ssh 监听端口
ssh·ubuntu 24.04·ssh.socket
tritone1 天前
在优豆云免费云服务器上初探SSH与SCP的便捷操作
运维·服务器·ssh
beckyye1 天前
WebSSH的简单实现
ssh·webssh·xterm.js·远程终端
beckyyy1 天前
WebSSH的简单实现
前端·ssh
刚刚觉醒的小菜鸡1 天前
ssh连接本地虚拟机
linux·服务器·ssh
信创工程师-小杨1 天前
国产银河麒麟SP1桌面版本启动ssh服务报错解决办法
linux·服务器·ssh
Narutolxy1 天前
从混合部署到高可用:在内网环境下搭建 GitLab-Jenkins-OpenResty的完整实战复盘20251014
gitlab·jenkins·openresty
字节逆旅2 天前
Git提交后追加修改操作指南
gitlab