在 Debian 上用 vsftpd 时,“权限”通常涉及 系统用户权限、目录权限、vsftpd 配置权限 三部分。下面按常见场景说明。
sudo apt update
sudo apt install vsftpd
配置文件位置:
/etc/vsftpd.conf
FTP 用户能不能读/写,取决于 两点同时成立:
允许用户用自己的 Linux 账号登录 FTP。
sudo adduser ftpuser
sudo chown ftpuser:ftpuser /home/ftpuser
sudo chmod 755 /home/ftpuser
用户对自己目录要有 写权限(7)
编辑 /etc/vsftpd.conf:
local_enable=YES
write_enable=YES
重启服务:
sudo systemctl restart vsftpd
✅ 这样 ftpuser 可以上传/下载自己的文件
防止用户看到系统其他目录。
chroot_local_user=YES
allow_writeable_chroot=YES
Debian 新版必须加
allow_writeable_chroot=YES,否则无法写入
anonymous_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
目录权限:
sudo chown ftp:ftp /srv/ftp
sudo chmod 755 /srv/ftp
⚠ 匿名写权限风险较大,生产环境不建议
不创建系统用户,只用 FTP 账号。
常见方案:
ftpvuser)简单示例:
guest_enable=YES
guest_username=ftpvuser
virtual_use_local_privs=YES
然后设置 /home/ftpvuser 权限即可。
local_enable=YES
/sbin/nologin(vsftpd 默认不允许)write_enable=YES
加:
allow_writeable_chroot=YES
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
userlist_enable=YES
如果你愿意,可以告诉我:
我可以直接帮你写一份 完整 vsftpd.conf + 权限命令。