Debian 上配置 SFTP 整体不难,尤其是只做“普通用户 SFTP 访问”时,基本就是改一个 SSH 配置的事。
下面按难度从低到高给你一个清晰认识:
如果你只是想让某个 Linux 用户能通过 SFTP 传文件:
# 创建用户
useradd -m sftpuser
passwd sftpuser
默认情况下,Debian 的 OpenSSH 已经支持 SFTP(通过 /etc/ssh/sshd_config 里的):
Subsystem sftp internal-sftp
直接用 FileZilla / scp / sftp 客户端连就行。
✅ 难度:★(几乎零配置)
很多人需要:
Match User sftpuser
ChrootDirectory /home/sftpuser
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
注意点(容易踩坑):
ChrootDirectory 必须是 root 所有✅ 难度:★★(配置 5 分钟,权限细节要注意)
比如:
可选方案:
Match Groupbindfs / mount --bindproftpd / vsftpd 替代✅ 难度:★★★~★★★★
| 场景 | 难度 |
|---|---|
| 系统用户 SFTP | 非常简单 |
| 限制目录 + 禁 SSH | 简单但注意权限 |
| 多用户隔离 / 虚拟用户 | 中等偏难 |
如果你愿意,可以告诉我:
我可以直接给你一份可复制的 Debian SFTP 配置。