解决Linux FTP Server连接问题可按以下步骤排查:
检查服务状态:
systemctl status vsftpd # 确保服务运行,未运行则启动:systemctl start vsftpd
配置防火墙:
firewall-cmd --add-service=ftp --permanent # 针对FTP服务
firewall-cmd --add-port=1024-1048/tcp --permanent # 针对被动模式
firewall-cmd --reload
验证配置文件:
编辑/etc/vsftpd/vsftpd.conf,确保以下关键参数正确:
listen=YES
anonymous_enable=NO # 若需禁止匿名访问
local_enable=YES
write_enable=YES
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048
修改后重启服务:systemctl restart vsftpd
检查网络连通性:
ping测试服务器可达性,telnet server_ip 21验证FTP端口是否开放。处理SELinux限制:
setenforce 0,若问题解决则调整策略允许FTP:setsebool -P ftpd_full_access on
排查用户权限:
chown ftpuser:ftpgroup /path/to/directory
chmod 755 /path/to/directory
查看日志定位问题:
分析/var/log/vsftpd.log或journalctl -xe中的错误信息,针对性解决。
注:若使用被动模式,需确保客户端防火墙允许被动模式端口范围通信。优先通过配置文件和日志排查,避免直接关闭安全机制(如SELinux)。