ubuntu22.04 git clone报错:ssh_dispatch_run_fatal: Connection to xxx port xxx: incorrect signature

解决ubuntu22.04 git clone报错SSH主机密钥验证失败的问题

在使用Git通过SSH协议克隆远程仓库时,你可能会遇到SSH主机密钥验证失败的问题。这个问题通常是由于服务器的主机密钥发生了变化,导致本地保存的密钥与服务器提供的密钥不匹配。下面是如何解决这个问题的步骤。

当你尝试克隆一个仓库时,可能会看到类似如下的警告信息:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    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 is
SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
Please contact your system administrator.
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.
Offending ED25519 key in /home/user/.ssh/known_hosts:1
Host key for [example.com]:29418 has changed and you have requested strict checking.
Host key verification failed.
fatal: 无法读取远程仓库。
请确认您有正确的访问权限并且仓库存在。

解决方法

第一步

vim /etc/ssh/ssh_config

添加如下一行即可

HostKeyAlgorithms ssh-rsa

第二步

方法一:更新已知主机密钥

  1. 移除旧的密钥
    使用ssh-keygen命令来移除旧的密钥条目。根据提示信息,执行以下命令(请将example.com和端口号替换为实际值):

    ssh-keygen -f "/home/user/.ssh/known_hosts" -R "[example.com]:29418"
    
  2. 重新连接并添加新的密钥
    再次尝试克隆仓库,SSH客户端会提示你是否要继续连接(yes/no)。输入yes后,新的主机密钥将会被添加到known_hosts文件中。

方法二:手动更新known_hosts文件

  1. 获取新密钥
    如果你知道新服务器的RSA或ED25519密钥指纹,可以直接通过命令行获取公钥(请将example.com和端口号替换为实际值):

    ssh-keyscan -p 29418 -t rsa example.com >> ~/.ssh/known_hosts
    

    或者对于ED25519类型的密钥:

    ssh-keyscan -p 29418 -t ed25519 example.com >> ~/.ssh/known_hosts
    
  2. 检查和编辑known_hosts文件
    打开~/.ssh/known_hosts文件,确保里面没有重复或冲突的条目,并且包含正确的密钥信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Shixfer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值