could not load host key
因需要,克隆一虚拟机。可是克隆的虚拟机死活连不上xhell显示如下。
could not load host key_远程连接
最先以为是iptables防火墙阻止了,结果防火墙没有发现任何规则。于是翻看日志,显示如下

could not load host key_启动失败_02

密钥加载失败,没有权限。于是乎,切换到/etc/ssh文件下下面。发现权限正常,密钥文件存在。于是,就将三个密钥重新生成一遍。瞬间满血复活。
ssh-keygen -t rsa -f ssh_host_rsa_key

could not load host key_启动失败_03

接下来将其他保存的密钥全部重新生成一次。
ssh-keygen -t ed25519 -f ssh_host_ed25519_key
生成完成后重启sshd服务,若是那个密钥还是不能加载,按照上述方法再次生成即可。
按照原理来说sshd服务启动的时候会自动生成密钥,这里生成的密钥为何不能用。因为是在克隆过程中密钥生成出错。如下图

could not load host key_启动失败_04

如果SSH主机密钥在那里找不到,或者它们的大小被截断成为0(就像上面那样),你需要从头开始重新生成主机密钥。