检查服务状态
systemctl status vsftpd # 查看服务是否运行,未运行则启动
systemctl start vsftpd
systemctl enable vsftpd # 设置开机自启
查看日志文件
/var/log/vsftpd.logjournalctl -xe 或 /var/log/messages//var/log/secure验证配置文件
/etc/vsftpd/vsftpd.conf 语法:vsftpd -t # 测试配置文件正确性
listen=YES(监听端口,默认21)local_enable=YES(允许本地用户登录)write_enable=YES(允许上传文件)chroot_local_user=YES(限制用户主目录)systemctl restart vsftpd排查端口与防火墙
netstat -tuln | grep :21
若被占用,修改配置文件中 listen_port 或停止冲突服务。firewall-cmd --permanent --add-port=21/tcp
firewall-cmd --reload
处理SELinux问题
getenforce # 若为Enforcing,需调整策略
setenforce 0
setsebool -P ftp_home_dir on
setsebool -P allow_ftpd_full_access on
确认用户权限
chown -R ftpuser:ftpuser /path/to/ftp/dir
chmod -R 755 /path/to/ftp/dir
常见错误及解决
/etc/vsftpd.conf 中 local_enable 及PAM配置。提示:修改配置后需重启服务,优先通过日志定位具体错误原因。