Disclaimer: This topic may contain information about third-party products. The information is for reference only. Alibaba Cloud does not make a guarantee in any form of the performance and reliability of the third-party products, and potential impacts of operations on these products.
Issue
In the Linux ECS instance, when you use the service or systemctl command to start the SSH service, the command line does not return any error information, but the service does not actually run properly. View the secure log and find an error message similar to the following.
sshd.service: main process exited, code=exited, status=203/EXEC.
init: ssh main process (1843) terminated with status 255.
Cause
The cause of this problem is usually an exception in the configuration of the PATH environment variable or the removal of files related to the SSH package.
Solution
Take note of the following items:
Before you perform high-risk operations such as modifying the specifications or data of an Alibaba Cloud instance, we recommend that you check the disaster recovery and fault tolerance capabilities of the instance to ensure data security.
Before you modify the specifications or data of an Alibaba Cloud instance, such as an Elastic Compute Service (ECS) instance or an ApsaraDB RDS instance, we recommend that you create snapshots or enable backups for the instance. For example, you can enable log backups for an ApsaraDB RDS instance.
If you have granted specific users the permissions on sensitive information, such as usernames and passwords, or submitted sensitive information in the Alibaba Cloud Management Console, we recommend that you modify the sensitive information at the earliest opportunity.
Note: The configurations and descriptions in this topic have been tested in CentOS 6.5 64-bit operating systems. The configurations of other Linux distributions may vary. For more information, see the official documentation of the corresponding distribution.
Follow these steps to check and resolve the problem.
Connect to the instance by using VNC. For more information, see Connect to an instance by using VNC.
Run the following command to check the configuration of environment variables:
echo $PATH
The system returns a similar value as follows. This value is the default value of the PATH environment variable.
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
If the default value of the PATH environment variable is changed, run the following command to reset the variable:
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
Run the following command to find and confirm the path of the sshd program:
find / -name sshd
The system returns similar to the following to confirm the default path that contains the sshd program.
/usr/sbin/sshd
If the corresponding file does not exist, we recommend that you reinstall the SSH software package. You can also try to upload normal files from outside by using FTP or other methods.
Run the following command to restart the SSH service:
service sshd restart
Note: If you still have problems, see Elastic Compute Service Linux SSH failure troubleshooting guide for further troubleshooting.
Applicable scope
Elastic Compute Service (ECS)