要在Debian上启用SFTP服务,您需要遵循以下步骤:
安装OpenSSH服务器: 打开终端,然后输入以下命令以安装OpenSSH服务器:
sudo apt update
sudo apt install openssh-server
配置SSH服务器:
编辑/etc/ssh/sshd_config文件以启用SFTP服务。使用文本编辑器打开文件,例如nano:
sudo nano /etc/ssh/sshd_config
在文件中找到以下行:
#Subsystem sftp /usr/lib/openssh/sftp-server
取消注释(删除行首的#符号),以启用SFTP子系统:
Subsystem sftp /usr/lib/openssh/sftp-server
(可选)如果您希望限制用户访问SFTP,可以使用以下配置:
Match Group sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
这将限制名为sftpusers的用户组的用户访问SFTP。要使用此配置,您需要创建一个名为sftpusers的用户组,并将允许使用SFTP的用户添加到该组。
重启SSH服务:
保存并关闭sshd_config文件。然后重启SSH服务以应用更改:
sudo systemctl restart ssh
(可选)创建一个受限用户组并添加用户: 如果您选择了限制用户访问SFTP的配置,请按照以下步骤操作:
a. 创建一个名为sftpusers的新用户组:
sudo groupadd sftpusers
b. 将要允许使用SFTP的用户添加到sftpusers组:
sudo usermod -aG sftpusers your_username
将your_username替换为您要允许使用SFTP的用户名。
c. 更改用户的默认shell为/bin/false,以防止他们通过SSH登录:
sudo usermod -s /bin/false your_username
d. 更改用户的家目录权限,以便他们只能访问自己的家目录:
sudo chown root:root /home/your_username
sudo chmod 755 /home/your_username
现在,您已经成功启用了Debian上的SFTP服务。用户可以使用SFTP客户端(如FileZilla)连接到服务器,并使用其用户名和密码进行身份验证。