解决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 --zone=public --add-port=21/tcpsudo firewall-cmd --permanent --zone=public --add-port=10060-10070/tcp(根据实际配置调整)。sudo firewall-cmd --reload。sudo setenforce 0。/etc/selinux/config,将 SELINUX=enforcing 改为 SELINUX=permissive 或 disabled。sudo setsebool -P ftp_home_dir on。sudo chown -R ftpuser:ftpuser /path/to/ftpdir,sudo chmod -R 755 /path/to/ftpdir。local_root 或 chroot 路径是否正确。/var/log/vsftpd.log 或 /var/log/secure,定位错误信息(如认证失败、端口占用等)。常见问题及对应解决:
local_enable=YES 且PAM配置无误。write_enable=YES,用户目录可写,且SELinux未阻止操作。若问题仍未解决,可参考官方文档或社区论坛进一步排查。