在 Debian 上开启 SFTP(基于 SSH 的 FTP)通常不需要额外安装 FTP 服务,因为 OpenSSH 自带 SFTP。下面是常见做法和注意事项。
Debian 默认可能没有装 openssh-server
sudo apt update
sudo apt install openssh-server
启动并设置开机自启:
sudo systemctl enable ssh
sudo systemctl start ssh
SFTP 使用的是 22 端口(SSH),不是 FTP 的 21 端口
只要 SSH 正常,SFTP 就已经开启:
sftp user@服务器IP
如果登录成功,说明 SFTP 已可用。
这是生产环境常见需求。
sudo adduser sftpuser
编辑:
sudo nano /etc/ssh/sshd_config
在文件末尾添加:
Match User sftpuser
PasswordAuthentication yes
ChrootDirectory /home/sftpuser
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser
sudo mkdir /home/sftpuser/upload
sudo chown sftpuser:sftpuser /home/sftpuser/upload
sudo systemctl restart ssh
现在 sftpuser 只能 SFTP,不能 SSH。
确保 22 端口开放:
sudo ufw allow 22
ssh 服务在运行如果你愿意,可以告诉我:
我可以给你更精确的配置。