ssh登录服务器报错“no matching host key type found. Their offer: ssh-rsa,ssh-dss”解决方法

^_^ 纵歌 2024-10-01 08:07:02 阅读 90

这个错误表明你尝试使用 <code>ssh 连接到远程服务器时,客户端和服务器之间没有匹配的 host key 类型。具体来说,远程服务器提供了 ssh-rsassh-dss 类型的 host key,但你的 SSH 客户端配置可能不再支持这些较旧的算法。最近的 OpenSSH 版本默认禁用了不够安全的算法,如 ssh-rsassh-dss

解决方法

临时启用 ssh-rsa

你可以在 SSH 命令中显式启用 ssh-rsa 来尝试连接:

ssh -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa user@x.x.x.x -p 2208

永久性解决:

如果你需要频繁连接这个服务器,可以在本地的 SSH 配置文件中添加配置:

编辑或创建 ~/.ssh/config 文件,添加以下内容:

Host x.x.x.x

HostKeyAlgorithms +ssh-rsa

PubkeyAcceptedKeyTypes +ssh-rsa

Port 2208

这样每次连接时,都会自动使用 ssh-rsa 算法。

升级服务器端的 SSH:

你可以建议远程服务器管理员升级 SSH 服务器的配置,支持更现代的算法,如 rsa-sha2-256rsa-sha2-512

这些方法可以帮助你解决 SSH 密钥算法不匹配的问题。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。