vsftpd 常見問題

mickole發表於2013-07-10

一、vsftp服務能開啟卻連線不上的解決辦法:

用虛擬機器裝了centos,vsftp是用centos自帶的。啟動vsftd服務後卻一直連不上,原因是被防火牆給擋了。

檢視防火牆狀態:/etc/init.d/iptables status

停掉防火牆:/etc/init.d/iptables stop

也可以永久關閉防火牆:chkconfig --level 35 iptables off 虛擬機器下跑沒什麼所謂,建議永久關閉。

關閉後就能成功連上了。

二、centos vsftp不能切換目錄:

訪問提示如下錯誤:
500 OOPS: cannot change directory:/home/ftp
原因是他的CentOS系統安裝了SELinux,因為預設下是沒有開啟FTP的支援,所以訪問時都被阻止了。
//檢視SELinux設定
# getsebool -a|grep ftp

出現如下項:
ftpd_disable_trans --> off
或者
ftp_home_dir-->off

解決方法:
//使用setsebool命令開啟
# setsebool ftpd_disable_trans 1
或者
# setsebool ftp_home_dir 1
//再次檢視當前狀態是否是on的狀態
# getsebool -a|grep ftp
ftpd_disable_trans --> on
或者
ftp_home_dir-->on

//setsebool使用-P引數,永久有效,無需每次開機都輸入這個命令
# setsebool -P ftpd_disable_trans 1
或者
# setsebool -P ftp_home_dir 1
# service vsftpd restart

有關selinux的配置

如關閉,僅僅警告,強制等等 需要編輯/etc/sysconfig/selinux 預設是強制