以下是Debian系统中vsftp故障排查步骤:
检查服务状态
sudo systemctl status vsftpd # 确认服务是否运行,未运行则启动
sudo systemctl start vsftpd
sudo systemctl enable vsftpd # 设置开机自启
查看日志文件
sudo tail -f /var/log/vsftpd.log # 实时查看错误信息
sudo cat /var/log/vsftpd.log # 查看完整日志
验证配置文件
sudo vsftpd -t /etc/vsftpd.conf # 检查语法错误
sudo nano /etc/vsftpd.conf # 确保关键配置正确(如listen、local_enable等)
处理权限问题
sudo chown root:root /etc/vsftpd.conf
sudo chmod 644 /etc/vsftpd.conf
sudo chmod 755 /home/ftpuser # 确保用户目录可访问
sudo chown ftpuser:ftpuser /home/ftpuser # 确保用户拥有目录
检查防火墙与端口
sudo ufw status # 确认防火墙允许FTP端口(默认21)
sudo ufw allow 21/tcp
sudo ufw reload
排查SELinux限制(若启用)
sestatus # 检查SELinux状态
sudo setsebool -P ftp_home_dir on # 允许访问用户主目录
sudo setsebool -P allow_ftpd_full_access on # 允许FTP完整访问
测试网络连接
ping vsftpd服务器IP # 确保网络可达
telnet vsftpd服务器IP 21 # 测试FTP端口连通性
其他常见问题
/etc/vsftpd.conf
中anonymous_enable=YES
,并确保匿名目录权限为755。chmod 775
或755
),并检查write_enable=YES
。pasv_enable=YES
,并开放被动模式端口范围。提示:修改配置后需重启服务(sudo systemctl restart vsftpd
),优先通过日志定位具体错误。[1,2,3,4,5,6,7,8,9,10]