- 安装openssh-server
- 修改配置文件
- 启动
以下是在常见的Linux系统中手动开启sshd
服务的步骤:
1.安装openssh-server
CentOS/RHEL系统
- 首先,以具有管理员权限的用户(通常是
root
)登录到系统。 - 检查
sshd
服务是否已经安装。可以使用以下命令:
rpm -qa | grep openssh-server
如果输出了类似openssh-server-<version>
的信息,说明已经安装了sshd
服务,其中<version>
是具体的版本号。如果没有安装,则需要先使用系统的包管理器(如yum
)进行安装。例如:
yum install openssh-server
Ubuntu/Debian系统
- 同样以具有管理员权限的用户(如
root
或通过sudo
获取临时管理员权限的用户)登录到系统。 - 检查
sshd
服务是否安装,使用命令:
dpkg -l | grep openssh-server
若有输出类似ii openssh-server <version>
的内容,表示已安装,<version>
为具体版本。若未安装,可通过apt
包管理器安装:
apt-get install openssh-server
2.修改配置文件
/etc/ssh/sshd_config
3.手动启动sshd
# /usr/sbin/sshd -D
当你遇到“Missing privilege separation directory: /run/sshd”这个错误提示,是因为在启动sshd
守护进程(使用/usr/sbin/sshd -D
命令时),它找不到用于特权分离的目录/run/sshd
。
以下是解决这个问题的步骤:
1. 创建缺失的目录
在终端中以具有足够权限的用户(通常是root
用户)执行以下命令来创建/run/sshd
目录:
sudo mkdir /run/sshd
2. 设置目录权限
创建好目录后,需要为其设置合适的权限。一般来说,对于/run/sshd
目录,合适的权限设置如下:
sudo chmod 755 /run/sshd
3. 再次尝试启动sshd
完成上述步骤后,再次尝试启动sshd
守护进程,使用之前的命令:
/usr/sbin/sshd -D &