无法使用SSH远程连接Linux系统的ECS实例怎么办?

本文介绍无法使用SSH远程连接Linux系统的ECS实例,但是可以通过VNC登录实例的问题原因和解决方案。

问题现象

对于Linux系统的ECS实例,使用SSH无法登录,使用VNC登录后,执行systemctl status sshd.service命令查看SSH服务(sshd.service)的状态。如果状态返回结果为inactive(dead),表示SSH服务未启动,会导致无法使用SSH远程连接实例。

查看sshd服务状态

问题原因

SSH服务未启动有很多原因,例如sshd进程未设置开机自启动、sshd关键目录的owner属性或group属组设置错误、SSH服务配置文件异常、PATH环境变量配置异常、端口被占用等。

解决方案

  1. 使用VNC远程连接ECS实例。

    具体操作,请参见使用VNC登录实例

  2. 执行如下命令,查看SSH服务的状态。

    systemctl status sshd.service

    返回结果如下图所示,表示sshd.service进程未启动。

    查看sshd服务状态

  3. 执行如下命令,启动SSH服务并设置SSH服务开机时自启动。

    sudo systemctl start sshd.service
    sudo systemctl enable sshd.service