实验室的服务器连不上了,试了很多种方法,包括删除known_hosts和卸载重装本地的vscode和ssh,但还是连不上,基本上可以确定是服务器方面的问题。vscod最开始是弹出以下报错

kex_exchange_identification: Connection reset

网上很多解决方法我也试过了,包括重新生成密钥 ssh-keygen 修改/etc/hosts.deny或/etc/hosts.allow,但是我检查过/etc/hosts.deny本身的deny名单是空的,说明不是我的ip被服务器ban了。

后面有帖子提到重启ssh,我想着要不重启一下服务器的ssh试试看,没想到连重启都成问题。直接报错下面提示:

Job for ssh.service failed because the control process exited with error code.
See "systemctl status ssh.service" and "journalctl -xe" for details.

使用systemctl status ssh.service指令查看ssh的服务状态,看看为什么无法重启ssh服务,结果发现是22端口被占用。
在这里插入图片描述
后面按照指示,使用netstat -tulpn | grep 22指令查看22号端口被那个进程占用,发现是这个进程号为1993进程在占用22号端口,找到之后给这个进程kill掉。
在这里插入图片描述
把进程kill掉之后,使用service sshd restart指令对ssh进行重启,这回没有报错了。在查看一下状态,欸,这回成功重启了。最后也是能成功登上服务器了。
在这里插入图片描述
多亏了实验室服务器的图形界面还能登得上,不然就得物理重启服务器了。因为kex_exchange_identification: read: Connection reset的情况是服务器方面的问题。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐