window环境下git通过ssh clone gitlab服务器的代码报错

Unable to negotiate with 192.168.100.78 port 29418: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1
fatal: Could not read from remote repository.

Please make sure you have the correct access rights

and the repository exists.

解决办法:

在.ssh同跟文件夹下创建config文件,文件内内容为:

Host *

KexAlgorithms +diffie-hellman-group1-sha1

保存后重新连接-》成功解决。

window环境下git通过ssh clone gitlab服务器的代码报错Unable to negotiate with 192.168.100.78 port 29418: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1fatal: Could not read from remot...
在使用 git fetch的时候,遇到了如下错误Unable to negotiate with 192.168.4.28 port 19428: no matching key exchange method found. Their offer: diff ie- hellman - group 1- sha1 fatal: Could not read from remote repository.Plea
key exchange failed. no compatible key exchange method. the server supports these methods: curve25519-sha256,curve25519-sha256@lib ssh .org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, diff ie- hellman - group -exchange-sha256, diff ie- hellman - group 16-sha512, diff ie- hellman - group 18-sha512, diff ie- hellman - group 14-sha256
### 回答1: 密钥交换失败。没有兼容的密钥交换方法。 服务器 支持以下方法:curve25519-sha256,curve25519-sha256@lib ssh .org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, diff ie- hellman - group -exchange-sha256, diff ie- hellman - group 16-sha512, diff ie- hellman - group 18-sha512, diff ie- hellman - group 14-sha256。 ### 回答2: 当我们尝试与 服务器 建立安全连接时,我们需要对接受到的公共加密密钥进行验证。此时,如果我们的密钥交换方法与 服务器 不兼容,就会发生“key exchange failed. no compatible key exchange method”的错误。 出现此错误的原因可能是 服务器 只支持特定类型的密钥交换方法,而我们的密钥交换方法不在其支持范围内。从 服务器 支持的密钥交换方法列表中,我们可以看到它支持许多不同的方法,包括曲线25519-sha256、ECDH-sha2-nistp256、ECDH-sha2-nistp384、ECDH-sha2-nistp521、 Diff ie- Hellman - group -exchange-sha256、 Diff ie- Hellman - group 16-sha512、 Diff ie- Hellman - group 18-sha512和 Diff ie- Hellman - group 14-sha256。因此,我们需要确保我们所使用的密钥交换方法与 服务器 支持的至少一个方法相匹配,才能成功建立连接。 在解决此问题时,我们可以采取以下几个步骤: 首先,我们可以检查使用的密钥交换方法是否与 服务器 支持的其中之一相匹配。如果不匹配,则应考虑更新客户端的密钥交换方法或与 服务器 的管理员联系,以确保 服务器 支持所需的方法。 其次,我们可以尝试使用其他协议或加密算法,或通过更改密钥长度或其他参数来调整密钥交换方法。如果这些解决方案仍然无法解决问题,则需要进一步研究原因,或者与专业技术支持人员联系以获取帮助。 总之,当出现“key exchange failed. no compatible key exchange method”的错误时,我们应该不断尝试寻找解决问题的方法,以确保我们能够与 服务器 建立安全连接。 ### 回答3: 这个错误显示在 SSH 协议中,通常表示登录远程 服务器 时出现问题。在其尝试与 服务器 进行密钥交换时,没有找到可用的密钥交换方法。操作系统和 服务器 之间的协议需要使用密钥交换机制来进行安全传输。 该错误消息指出, 服务器 支持的密钥交换方法包括:curve25519-sha256,curve25519-sha256@lib ssh .org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, diff ie- hellman - group -exchange-sha256, diff ie- hellman - group 16-sha512, diff ie- hellman - group 18-sha512, diff ie- hellman - group 14-sha256。如果发生密钥交换失败的情况,则可能是由于需要在客户端和 服务器 之间配置的协议版本不同而导致的。 因此,确保客户端和 服务器 支持的协议版本相同,以及之间进行的密钥交换方式。可以尝试使用其他密钥交换方法,通过升级协议版本或修改 SSH 服务器 配置来解决该问题。此外,也可以考虑升级 SSH 客户端版本或替换不兼容的软件包以解决该问题。