206
云计算
负载均衡
产品简介
产品价格
快速入门
用户指南
实践操作
常见问题
购买指南
云服务器
产品简介
计费规则
购买指导
控制台使用指南
常见问题
云数据库
产品简介
计费规则
购买指导
快速入门
连接实例
控制台使用指南
对象存储
产品简介
控制台使用指南
程序员百科
Python
无法远程连接Linux系统的ECS实例,提示“error: Unable to load host key: /etc/ssh/ssh_host_rsa_key”错误怎么办?

产品推荐:

1、安全稳定的云服务器租用,2核/2G/5M仅37元,点击抢购>>>

2、高防物理服务器20核/16G/50M/500G防御仅350元,点击抢购>>>

3、百度智能建站(五合一网站)仅880元/年,点击抢购>>> 模板建站(PC+手机站)仅480元/年,点击抢购>>>

4、阿里云服务器2核2G3M仅99元/年、2核4G5M仅199元/年,新老同享,点击抢购>>> 

5、腾讯云服务器2核2G4M仅99元/年、新老同享,点击抢购>>>   


无法远程连接Linux系统的ECS实例,提示“error: Unable to load host key: /etc/ssh/ssh_host_rsa_key”错误怎么办?

本文主要介绍远程连接Linux系统的ECS实例,提示“error: Unable to load host key: /etc/ssh/ssh_host_rsa_key”错误的原因和解决方案。

问题现象

使用SSH方式无法连接Linux系统的ECS实例,通过VNC登录实例后,执行cat var/log/securecat var/log/message查看securemessage日志,出现类似如下错误信息。

error: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@error: @ WARNING: UNPROTECTED PRIVATE KEY FILE! @error: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@error: Permissions 0777 for '/etc/ssh/ssh_host_rsa_key' are too open.error: It is required that your private key files are NOT accessible by others.error: This private key will be ignored.error: Unable to load host key "/etc/ssh/ssh_host_rsa_key": bad permissions error: Unable to load host key: /etc/ssh/ssh_host_rsa_key
error: Unable to load host key "/etc/ssh/ssh_host_rsa_key": invalid formaterror: Unable to load host key "/etc/ssh/ssh_host_rsa_key": invalid formaterror: Unable to load host key: /etc/ssh/ssh_host_rsa_keyerror: Unable to load host key "/etc/ssh/ssh_host_ecdsa_key": invalid formaterror: Unable to load host key "/etc/ssh/ssh_host_ecdsa_key": invalid formaterror: Unable to load host key: /etc/ssh/ssh_host_ecdsa_key

问题原因

该问题可能的由于ECS实例中SSH服务相关的密钥文件异常,导致sshd守护进程不能加载到正确的SSH密钥。常见密钥文件异常情况如下:

  • 相关密钥文件权限配置异常,导致无法正常读取。

    例如,私钥文件默认权限是600,如果配置成777等其他权限,导致其他用户也有读取或修改权限。此时,SSH服务会认为该配置存在安全风险,导致连接失败。

  • 相关密钥文件异常,例如文件损坏、被删除或篡改等。

解决方案

您可以通过修改SSH服务相关的密钥权限或修复密钥文件来解决此问题。

  1. 以VNC方式远程连接ECS实例。

    具体操作,请参见连接方式概述。

  2. 执行如下命令,查看SSH服务的公钥与密钥文件。

    ls -l /etc/ssh
    • 如果系统显示如下信息,说明公钥与密钥文件丢失,请执行步骤4。

      密钥文件丢失
    • 如果系统显示如下信息,公钥与密钥文件权限为777,并且文件大小为0,说明文件存在异常,请执行步骤3。

      说明

      权限异常并非是777时才是异常,当权限超过默认权限时,都会出现报错。

      查看密钥权限
  3. 执行如下命令,恢复相关密钥文件的默认权限。

    说明

    不同Linux发行版本中,密钥权限可能不同,你可以参考相同Linux发行版本中密钥权限进行修改。

    cd /etc/ssh/
    sudo chmod 600 ssh_host_*
    sudo chmod 644 *.pub
  4. 执行如下命令,重启SSH服务。

    重启SSH服务时,将会自动生成相关密钥文件。

    sudo systemctl restart sshd.service
  5. 执行如下命令,确认已生成密钥相关文件。

    ls -l /etc/ssh
    查看密钥


这条帮助是否解决了您的问题? 已解决 未解决

提交成功!非常感谢您的反馈,我们会继续努力做到更好! 很抱歉未能解决您的疑问。我们已收到您的反馈意见,同时会及时作出反馈处理!