Linux 下 FTP Server(如 vsftpd、proftpd、pure-ftpd)配置失败的原因很多,常见问题和排查思路如下:
systemctl status vsftpd
journalctl -xe
常见错误:
FTP 使用:
# firewalld 示例
firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload
云服务器还要检查安全组。
即使配置正确也会失败。
检查:
getenforce
临时关闭测试:
setenforce 0
永久解决:
setsebool -P ftp_home_dir on
FTP 用户无法访问目录:
ls -ld /home/ftpuser
chown ftpuser:ftpuser /home/ftpuser
chmod 755 /home/ftpuser
客户端能连但不能列目录,多半是 PASV 问题。
vsftpd 示例:
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
并放行对应端口。
以 vsftpd 为例:
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
少了 allow_writeable_chroot 会导致登录失败。
cat /etc/pam.d/vsftpd
systemctl status 服务名/var/log/messages 或 journalctlftp localhost 测试你可以补充:
我可以直接帮你改配置文件。