linux基础_解决 SSH 报错 "no hostkey alg"

蛋蛋 2025年05月08日 29 0

当你在使用 SSH 进行远程登录时遇到 no hostkey alg 错误,这通常是由于 SSH 客户端和服务器之间的版本不兼容导致的。以下是解决该问题的几种方法。

示例

ssh user@hostname
no hostkey alg

方法一:修改 SSH 配置文件

  • 登录到高版本的服务器。
  • 编辑 sshd_config 文件:
vim /etc/ssh/sshd_config
  • 在文件末尾添加以下内容:
HostKeyAlgorithms +ssh-rsa
  • 保存并退出编辑器,然后重启 SSH 服务:
service sshd restart
  • 重新尝试连接。

方法二:重新生成 SSH 主机密钥

  • 删除现有的 SSH 密钥:
rm -rf /etc/ssh/ssh*key
  • 重新生成密钥并重启 SSH 服务:
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
systemctl restart sshd

方法三:升级 SSH 版本

  • 检查当前安装的 OpenSSH 版本:
yum list | grep openssh
  • 如果版本较低,使用以下命令升级:
yum -y install openssh

通过以上方法,你可以有效解决 no hostkey alg 错误,确保 SSH 连接的顺利进行。

Last Updated: 2025/05/08 14:16:28
代码编辑工具 在 CentOS 7.6 上安装 NGINX