1. 检查网络与服务器基础配置
确保CentOS服务器与客户端网络连通,可通过ping <服务器IP>测试。若使用NAT模式,需配置静态IP(编辑/etc/sysconfig/network-scripts/ifcfg-ens33,设置BOOTPROTO=static、IPADDR、NETMASK、GATEWAY等参数,重启网络服务systemctl restart network)。确认服务器IP、端口(FTP默认21,SFTP默认22)输入正确,避免因地址或端口错误导致连接失败。
2. 验证FTP服务状态
CentOS常用vsftpd作为FTP服务器,需确保其运行正常:
systemctl status vsftpd(若未运行,执行systemctl start vsftpd启动);systemctl enable vsftpd。3. 配置防火墙与SELinux
防火墙或SELinux可能阻止FTP流量,需调整规则:
firewall-cmd开放FTP端口(21)及被动模式端口范围(如10060-10070):firewall-cmd --permanent --add-port=21/tcp
firewall-cmd --permanent --add-port=10060-10070/tcp
firewall-cmd --reload
systemctl stop firewalld(若关闭后连接成功,需重新配置防火墙规则);Enforcing模式,需允许FTP访问用户目录:setsebool -P ftp_home_dir on
chcon -R -t public_content_rw_t /path/to/user/directory # 替换为用户实际目录
4. 正确配置FileZilla站点参数
在FileZilla“站点管理器”中,根据服务器协议调整设置:
5. 检查vsftpd配置文件
编辑/etc/vsftpd/vsftpd.conf,确保关键参数设置正确:
local_enable=YES;write_enable=YES;pasv_enable=YES、pasv_min_port=10060、pasv_max_port=10070、pasv_address=<服务器公网IP>(若服务器在NAT后,需替换为公网IP);chroot_local_user=YES(将用户限制在主目录)。systemctl restart vsftpd。6. 排查用户权限问题
确保FTP用户对目标目录有访问权限:
chown ftp_user:ftp_group /path/to/directory(替换为实际用户、组及目录);chmod 755 /path/to/directory(允许用户读取、执行,组和其他用户读取)。7. 查看日志定位问题
通过日志获取详细错误信息,辅助排查:
/var/log/secure(记录SSH/SFTP登录信息);/var/log/vsftpd.log(需在vsftpd.conf中启用xferlog_enable=YES)。