在CentOS系统中,要启动SFTP服务,首先需要确保已经安装了OpenSSH服务器。以下是启动SFTP服务的步骤:
-
安装OpenSSH服务器(如果尚未安装):
sudo yum install openssh-server
-
启动SSH服务:
sudo systemctl start sshd
-
设置SSH服务开机自启:
sudo systemctl enable sshd
-
检查SSH服务状态:
sudo systemctl status sshd
-
配置SFTP: 默认情况下,OpenSSH服务器已经配置了SFTP。如果你需要自定义SFTP配置,可以编辑
/etc/ssh/sshd_config
文件。打开文件进行编辑:
sudo vi /etc/ssh/sshd_config
确保以下行没有被注释掉(即没有以
#
开头):Subsystem sftp /usr/libexec/openssh/sftp-server
如果你需要限制用户只能使用SFTP,可以添加或修改以下配置:
Match Group sftpusers ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no
然后创建一个用户组
sftpusers
并添加需要限制的用户:sudo groupadd sftpusers sudo usermod -aG sftpusers username
确保用户的家目录权限正确:
sudo chown root:root /home/username sudo chmod 755 /home/username
如果使用了
ChrootDirectory
,还需要确保chroot目录及其所有父目录的权限设置正确:sudo chown root:root /home/username sudo chmod 755 /home/username sudo chown root:root /home/username/uploads sudo chmod 755 /home/username/uploads
-
重启SSH服务以应用更改:
sudo systemctl restart sshd
完成以上步骤后,SFTP服务应该已经启动并运行。你可以使用SFTP客户端连接到服务器进行文件传输。