VSFTP是一個(gè)基于GPL發(fā)布的類Unix系統(tǒng)上使用的FTP服務(wù)器軟件,它的全稱是Very Secure FTP 從此名稱可以看出來(lái),編制者的初衷是代碼的安全。
以下全過(guò)程是在Centos 5 下操作演示的。
安裝 vsftp
yum install vsftpd
創(chuàng)建日志文件
touch /data1/logs/vsftpd.log
修改 vsftp 配置文件
vi /etc/vsftpd/vsftpd.conf
參數(shù)設(shè)置,注意:輸入“/欲查找內(nèi)容”可以快速查找,千萬(wàn)不能出現(xiàn)多余的空格
anonymous_enable=NO #不允許匿名訪問(wèn)
local_enable=YES #本地用戶可以訪問(wèn)
chroot_list_enable=YES #使用戶不能離開(kāi)主目錄
xferlog_file=/var/log/vsftpd.log #vsftpd的服務(wù)日志保存路徑,默認(rèn)不存在
ascii_upload_enable=YES #允許上傳
ascii_download_enable=YES #支持ASCII模式的下載功能
pam_service_name=vsftpd #千萬(wàn)別忘記添加
手工輸入以下參數(shù)和值
guest_enable=YES #開(kāi)啟虛擬用戶的功能
guest_username=ftp #虛擬用戶隸屬于它
user_config_dir=/etc/vsftpd/vuser_user
創(chuàng)建 chroot list
touch /etc/vsftpd/list
echo ftp>>/etc/vsftpd/list
進(jìn)行認(rèn)證,db_load 找不到的話就先安裝 db4-utils(yum install db4 db4-utils)
vi /etc/vsftpd/vsftp_users.conf
輸入奇數(shù)為賬號(hào),偶數(shù)為密碼
www_lingdus_com #賬號(hào)
www_lingdus_com #密碼
生成認(rèn)證文件
db_load -T -t hash -f /etc/vsftpd/vsftp_users.conf /etc/vsftpd/vsftp_users.db
編輯認(rèn)證文件,清空或注釋文件中全部?jī)?nèi)容
vi /etc/pam.d/vsftpd
清空之后,再輸
auth required pam_userdb.so db=/etc/vsftpd/vsftp_users
account required pam_userdb.so db=/etc/vsftpd/vsftp_users
自定義用戶
mkdir /etc/vsftpd/users/
vi /etc/vsftpd/vuser_conf/www_lingdus_com
添加以下內(nèi)容
local_root=/data0/htdocs/lingdus/bbs #它根目錄
write_enable=YES
anon_umask=022
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
OK了,啟動(dòng)或重啟 vsftp
service vsftpd restart(重啟 restart)
可以連接FTP了
ip:XXX.XXX.XXX.XXX
端口:21
賬號(hào):www_lingdus_com
密碼:www_lingdus_com
連接 FTP 時(shí)若提示錯(cuò)誤:553 Could not create file 或不能上傳錯(cuò)誤,則關(guān)閉SELinux
終端:setsebool -P ftpd_disable_trans 1
重啟:service vsftpd restart
或者把
guest_username=ftp #虛擬用戶隸屬于它
更改為
guest_username=root #虛擬用戶隸屬于它
重啟:service vsftpd restart
啟動(dòng)或連接 FTP 時(shí)提示錯(cuò)誤:500 OOPS: bad bool value in config file for: XXX
很有可能是在弄參數(shù)的時(shí)候,弄了多余的空格,或參數(shù)項(xiàng)搞錯(cuò)了,應(yīng)仔細(xì)檢查。