昨天上午搭建了ftp文件服务器,结果下班时候发现服务器连接不上,回家后搞了下,看了网上一些处理方法,有了大概的思路。我的服务器是阿里云的。

终端登陆不了,你可以通过阿里云的控制台,找到管理,然后点击“连接实例远程命令”,就会跳出命令行了。有了命令行好操作啊,不然无从下手。

image.png

大体排错思路。

先看端口开了没

ps -A| grep sshd 发现没有

netstat -nultp|grep 22 也没有发现22端口

检查防火墙是不是会影响,关闭了防火墙,重启sshd服务

systemctl stop firewalld.service
systemctl start sshd.service 

并没有输出任何错误日志,再次检查端口是否启动,依然没有

最后检查systemctl的日志

Aug 28 09:13:32 iZbp18nyz28va2zwadft2qZ sshd[21700]: /var/empty/sshd must be owned by root and not group or world-writable.
Aug 28 09:13:32 iZbp18nyz28va2zwadft2qZ systemd[1]: sshd.service: main process exited, code=exited, status=255/n/a
Aug 28 09:13:32 iZbp18nyz28va2zwadft2qZ systemd[1]: Failed to start OpenSSH server daemon.
-- Subject: Unit sshd.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit sshd.service has failed.
-- 
-- The result is failed.
Aug 28 09:13:32 iZbp18nyz28va2zwadft2qZ systemd[1]: Unit sshd.service entered failed state.
Aug 28 09:13:32 iZbp18nyz28va2zwadft2qZ systemd[1]: sshd.service failed.

文件夹 /var/empty/sshd没权限

执行下面的命令

chown root:root /var/empty/sshd

chmod 711 /var/empty/sshd

sshd -t

看下会出什么错,按照错误提示去操作

systemctl start sshd.service 启动成功

我是给/var/empty/sshd 文件夹赋权后,重启sshd就成功登陆了。