检查服务状态
sudo systemctl status vsftpd # 查看服务是否运行
sudo systemctl start vsftpd # 启动服务
查看日志文件
sudo journalctl -xeu vsftpd.service # 查看详细错误日志
sudo tail -n 50 /var/log/vsftpd.log # 查看日志文件(部分系统路径可能不同)
检查配置文件
sudo vsftpd -t /etc/vsftpd/vsftpd.conf # 检查语法错误
sudo nano /etc/vsftpd/vsftpd.conf # 确保关键参数正确(如listen、local_enable等)
验证用户权限
sudo chown -R ftpuser:ftpuser /home/ftpuser # 修改属主
sudo chmod -R 755 /home/ftpuser # 设置权限
/etc/vsftpd/ftpusers或/etc/ftpusers中被限制。处理防火墙与端口
sudo firewall-cmd --permanent --add-port=21/tcp # firewalld
sudo firewall-cmd --reload
sudo netstat -tuln | grep 21 # 若被占用需修改配置文件端口
调整SELinux设置
sudo setsebool -P ftp_home_dir on # 允许访问用户主目录
sudo setsebool -P ftpd_full_access on # 允许完全访问(如需上传)
sudo setenforce 0 # 临时关闭
sudo nano /etc/selinux/config # 永久修改为SELINUX=disabled
常见错误处理
/etc/vsftpd.conf中local_enable是否为YES,或查看PAM配置。chroot_local_user等参数正确。重启服务验证
每次修改配置后,执行:
sudo systemctl restart vsftpd
sudo systemctl status vsftpd # 确认服务正常运行