写点什么

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

作者:背包客
  • 2023-06-12
    河北
  • 本文字数:735 字

    阅读完需:约 2 分钟

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

这些是关于如何在 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 攻击的理论范围内。


获取Mac软件及技巧


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


最简单的解决方案步骤 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 username@123.123.123.123



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


永久解决方案


步骤 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 用户名 @123.123.123.123



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

用户头像

背包客

关注

还未添加个人签名 2023-06-09 加入

还未添加个人简介

评论

发布
暂无评论
如何修复 Mac 上的“未找到匹配的密钥交换方法”_macos_背包客_InfoQ写作社区