在 Ubuntu 上通过 SFTP 添加用户,通常有两种常见场景:
sudo adduser sftpuser
按提示设置密码和用户信息。
Ubuntu 默认使用 OpenSSH,一般已经支持 SFTP。
测试:
sftp sftpuser@服务器IP
sudo adduser sftpuser
sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser
sudo mkdir /home/sftpuser/upload
sudo chown sftpuser:sftpuser /home/sftpuser/upload
编辑:
sudo nano /etc/ssh/sshd_config
在文件末尾添加:
Match User sftpuser
ChrootDirectory /home/sftpuser
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
sudo systemctl restart ssh
sftp sftpuser@服务器IP
sudo groupadd sftpusers
sudo adduser user1
sudo usermod -G sftpusers user1
Match Group sftpusers
ChrootDirectory /home/%u
ForceCommand internal-sftp
Write failed: Broken pipe
原因:Chroot 目录不是 root 拥有
解决:
sudo chown root:root /home/sftpuser
如果你告诉我:
我可以给你更精确的配置。