晚上实验室的GPU服务器突然连不上了,MaboXterm提示:The remote unexpectedly shuts down the network connection(远程端意外关闭网络连接)。
用‘service ssh status’查看sshd服务运行状态,出现了如图所示的error提示。
error:Could not load host key: /etc/ssh/ssh_host_rsa_key
error:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
error:@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
error:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
现象:查看sshd服务时,虽看似服务启动成功,但客户端并不能连接上sshd服务器端
这个报错的意思是:密钥文件/etc/ssh/ssh_host_rsa_key权限不能为0737,0737权限太开放了,要求你的密钥文件不能被其它用户读取。
从提示信息看是sshd守护进程不能加载主机密钥文件,因为找不到这些密钥文件(配置文件/etc/ssh/sshd_config中已定义密钥文件名与路径)。
然后我去修改了一下/etc/ssh/ssh_host_rsa_key密钥文件权限:chmod 600 /etc/ssh/ssh_host_rsa_key
bash-4.2# chmod 600 /etc/ssh/ssh_host_rsa_key
再去查看一下sshd的状态,出现了如下图所示的错误,看来刚才修改的权限并没有起作用。
直接执行/usr/sbin/sshd
,发现还是不能启动sshd
那就重新生成主机密钥文件吧!!
(1)生成rsa_key (-t表示生成的密钥所使用的加密类型;-f项后接要生成的密钥文件名);
bash-2.4# ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
(2)生成ecdsa_key;
bash-2.4# ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
(3)生成ed25519_key。
bash-2.4# ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key
现在验证一下密钥文件是否存在且合规,可以看到已生成相应主机密钥文件(实际上主机密钥文件为私钥,.pub文件为公钥)。
最后用MaboXterm登录一下服务器,成功!!!
# ==================================================
参考:https://blog.csdn.net/xiao__jia__jia/article/details/92701618