解决Debian中vsftp权限问题可从以下方面入手:
检查配置文件权限
确保/etc/vsftpd.conf属主为root,权限为644:
sudo chown root:root /etc/vsftpd.conf
sudo chmod 644 /etc/vsftpd.conf
设置用户目录权限
ftpuser),权限为755:sudo chown ftpuser:ftpuser /home/ftpuser
sudo chmod 755 /home/ftpuser
vsftpd.conf设置local_umask控制上传文件权限)。配置vsftpd关键参数
allow_writeable_chroot):sudo nano /etc/vsftpd.conf
# 修改以下参数
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
guest_enable及用户列表文件。处理SELinux(若启用)
若系统启用SELinux,需设置FTP用户目录的SELinux上下文:
sudo chcon -Rv --reference=/home/ftpuser /home/ftpuser
检查防火墙与日志
/var/log/vsftpd.log分析权限相关错误(如“553 Could not create file”可能因目录不可写)。重启服务生效
每次修改配置后重启vsftpd:
sudo systemctl restart vsftpd
注意:避免过度开放权限(如主目录权限设为777),优先使用chroot隔离用户,生产环境建议启用SSL/TLS加密。