解決CentOS上VSFTP連接問題可按以下步驟操作:
檢查服務狀態:確保vsftpd服務已啟動并運行
sudo systemctl status vsftpd
sudo systemctl start vsftpd # 若未啟動
驗證配置文件:
/etc/vsftpd/vsftpd.conf,確認關鍵參數:anonymous_enable=NO(禁用匿名登錄)local_enable=YES(允許本地用戶登錄)chroot_local_user=YES(限制用戶主目錄)pasv_enable=YES(啟用被動模式,需設置端口范圍如pasv_min_port=10060 pasv_max_port=10070)sudo vsftpd -t配置防火墻:
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --permanent --add-port=10060-10070/tcp # 若使用被動模式
sudo firewall-cmd --reload
處理SELinux限制:
sudo setsebool -P ftpd_disable_trans 1
sudo setsebool -P ftp_home_dir on
/etc/selinux/config,將SELINUX=enforcing改為disabled,重啟服務器。檢查用戶權限與目錄:
sudo useradd -d /path/to/ftpdir ftpuser
sudo chown -R ftpuser:ftpuser /path/to/ftpdir
sudo chmod -R 755 /path/to/ftpdir
測試連接:
查看日志排查:
/var/log/vsftpd.log或/var/log/secure,定位具體錯誤(如權限不足、端口沖突等)。常見錯誤及解決:
/etc/vsftpd.conf中的userlist_enable配置。ping服務器IP)及端口是否開放。