Debian下vsftpd故障排查步骤如下:
检查服务状态
sudo systemctl status vsftpd # 查看是否运行,未运行则启动 sudo systemctl start vsftpd sudo systemctl enable vsftpd # 设置开机自启 检查配置文件
/etc/vsftpd.conf无语法错误:sudo vsftpd -t # 测试配置文件语法 listen=YES、local_enable=YES、write_enable=YES等需正确设置。查看日志文件
sudo tail -f /var/log/vsftpd.log # 实时查看错误日志 sudo journalctl -xe # 查看系统日志中的详细错误 处理端口占用
sudo netstat -tuln | grep :21 # 检查21端口是否被占用 # 若被占用,修改配置文件中的listen_port或停止占用服务 检查权限与SELinux
755):sudo chown -R ftpuser:ftpuser /path/to/ftp sudo chmod -R 755 /path/to/ftp sudo setenforce 0 # 临时设为permissive模式 sudo setsebool -P ftpd_full_access 1 # 允许FTP访问 检查防火墙设置
sudo ufw status # 查看防火墙规则 sudo ufw allow 21/tcp # 开放FTP端口(被动模式需额外端口) sudo ufw reload 其他常见问题
/etc/vsftpd.ftpusers是否禁止该用户。write_enable=YES且目录可写。root)及依赖包是否完整。修改配置后,务必重启服务:
sudo systemctl restart vsftpd 若问题仍未解决,可通过journalctl -u vsftpd获取更详细的错误信息,或在社区论坛搜索具体错误代码。