如何修复 Mac 上的“未找到匹配的密钥交换方法”

时间: 2023-06-28 11:51:39

阅读: 344

这些是关于如何在 Mac 上尝试 SSH 时修复“未找到匹配的密钥交换方法”错误消息的说明。

尝试使用 macOS 通过 SSH 连接到旧服务器时,您可能会收到一条 ssh 错误消息,内容如下:

无法与 123.123.123.123 端口 22 协商:找不到匹配的密钥交换方法。

报错:diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1

为了成功连接,OpenSSH 必须为每个参数至少提供一个相互支持的选择。如果客户端和服务器无法就一组相互参数达成一致,则连接将失败。在这种情况下,客户端和服务器无法就密钥交换算法达成一致。服务器提供了 diffie-hellman-group1-sha1,它受 OpenSSH 支持,但默认情况下不再启用。它被认为很弱并且在 Logjam 攻击的理论范围内。

有几种方法可以解决这个问题......

最简单的解决方案步骤1

重新尝试 SSH 连接,将以下内容添加到命令行:

Reattempt your SSH connection, adding the following to your command line:
-oKexAlgorithms=+diffie-hellman-group1-sha1

ie. ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 [email protected]


或者,您可以按照以下步骤使该选项永久化...

永久解决方案

步骤1

打开一个新的终端窗口

第二步

输入sudo nano ~/.ssh/config,然后在出现提示时输入您的管理密码。

第三步

将以下行添加到配置文件中,将 123.123.123.123 替换为您要连接的服务器的 IP。

主机 123.123.123.123

KexAlgorithms +diffie-hellman-group1-sha1

第四步

按Control+X退出。当询问是否保存修改后的缓冲区时输入Y。

点击Return确认要写入的文件名。

第五步

现在您可以像往常一样通过 SSH 连接到您的服务器。

ssh [email protected]

意思就是如何修复 Mac 上的“未找到匹配的密钥交换方法”的内容,希望对你有所帮助。

最新文章

查看更多