CentOS与VSFTP的网络连接问题可按以下步骤排查解决:
检查服务状态:
sudo systemctl status vsftpd  
确保服务已启动,未启动则用 sudo systemctl start vsftpd 启动。
验证配置文件:
编辑 /etc/vsftpd/vsftpd.conf,确认关键参数:
anonymous_enable=NO(禁止匿名登录)chroot_local_user=YES(限制用户主目录)pasv_enable=YES(启用被动模式,需设置端口范围,如 pasv_min_port=10060 pasv_max_port=10070)sudo systemctl restart vsftpd。配置防火墙:
sudo firewall-cmd --permanent --add-port=21/tcp  
sudo firewall-cmd --permanent --add-port=10060-10070/tcp  # 若使用被动模式  
sudo firewall-cmd --reload  
ufw 防火墙:sudo ufw allow 21/tcp。处理SELinux限制:
sudo setsebool -P ftp_home_dir 1/etc/selinux/config,将 SELINUX=enforcing 改为 disabled,重启服务器。检查网络连通性:
ping 测试服务器与客户端网络连通性。netstat -tuln | grep 21 确认FTP端口(21)已监听。验证用户权限:
sudo chown -R ftpuser:ftpuser /path/to/ftp/directory  
sudo chmod -R 755 /path/to/ftp/directory  
/etc/vsftpd/ftpusers 或 /etc/ftpusers 中被禁止登录。查看日志定位问题:
分析 /var/log/vsftpd.log 或 /var/log/messages,根据错误信息(如“530 Login incorrect”“Permission denied”)针对性解决。
常见错误及解决:
anonymous_enable 设置。若问题仍未解决,可参考VSFTP官方文档或社区论坛进一步排查。