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)。