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
客户端版本或替换不兼容的软件包以解决该问题。