sudo systemctl status vsftpd,未运行则启动:sudo systemctl start vsftpd,并设置开机自启:sudo systemctl enable vsftpd。/etc/vsftpd.conf 关键参数正确:
listen=YES(启用监听)。anonymous_enable=NO(禁止匿名登录,如需启用需配置权限)。local_enable=YES(允许本地用户登录)。write_enable=YES(允许上传/删除文件)。sudo systemctl restart vsftpd。sudo ufw allow 21/tcp。sudo ufw allow 40000:50000/tcp。sudo netstat -tulnp | grep vsftpd,确认21端口在监听。cat /etc/passwd | grep ftpuser。anonymous_enable=NO,且匿名用户目录权限正确(如需启用则设置为 755)。sudo chown -R ftpuser:ftpuser /home/ftpuser(修改所有者)。sudo chmod -R 755 /home/ftpuser(设置目录权限,文件可设为644)。chroot,确保用户主目录权限为 755 且属主为 root。pasv_min_port=40000,pasv_max_port=50000,并确保防火墙开放这些端口。pasv_address=服务器公网IP。sudo setenforce 0,若问题解决则需调整策略允许FTP访问。complain 模式:sudo aa-complain /etc/apparmor.d/usr.sbin.vsftpd。sudo tail -f /var/log/vsftpd.log 或 journalctl -u vsftpd,定位具体错误(如“500 OOPS”等)。max_client_size 或 local_max_rate 参数(单位为字节),调整后重启服务。ssl_enable=YES。提示:修改配置前建议备份文件(如 sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak),操作后重启服务验证效果。若问题仍未解决,可参考vsftpd官方文档或社区论坛进一步排查。