KyleBlog.cn 文章 标签 关于
文章 标签 关于

Ubuntu22上访问腾讯git服务报错“no matching host key type found”

问题描述

最近我把系统升级到了Ubuntu22,然后像往常一样配置好ssh的key,执行git clone git@git.code.tencent.com:xxx/yyy.git,从腾讯的git服务器拉代码。结果git clone命令报错,内容如下:

Cloning into '***'...
Unable to negotiate with *** port 22: no matching host key type found. Their offer: ssh-rsa
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

原因分析

SSH有多种RSA类型,以前最常用的就是ssh-rsa,属于旧的类型,新版的有rsa-sha2-256rsa-sha2-512。 Ubuntu升级后,自带的新版git认为旧版的ssh-rsa不再安全,默认不会支持这种RSA类型。

解决方案

编辑~/.ssh/config,添加如下内容,告诉git可以对腾讯的git服务器做特殊处理,支持ssh-rsa

Host git.code.tencent.com
    User git
    PubkeyAcceptedAlgorithms +ssh-rsa
    HostkeyAlgorithms +ssh-rsa

之后,git clone就成功了。

本文为kyleblog.cn原创,转载请注明出处:https://www.kyleblog.cn/posts/git_no_matching_host_key_type_found

发布日期:2024-01-25 联系作者