1、yum安裝vsftpd程序:
[root@master ~]# yum install vsftpd -y
2、備份修改配置文件
[root@master ~]# cd /etc/vsftpd [root@master vsftpd]# cp vsftpd.conf{,.bak} [root@master vsftpd]# grep –v ‘#’ vsftpd.conf
anonymous_enable=NO #是否允許anonymous登錄FTP服務器,默認是允許的。 local_enable=YES #是否允許本地用戶登錄FTP服務器,默認是允許 write_enable=YES #是否允許用戶具有在FTP服務器文件中執行寫的權限,默認是允許 anon_umask=022 #設置虛擬用戶的文件生成掩碼爲022,默認是077 dirmessage_enable=YES #激活目錄信息,當遠程用戶更改目錄時,將出現提示信息 xferlog_enable=YES #啓用上傳和下載日誌功能 connect_from_port_20=YES #啓用FTP數據端口的連接請求 xferlog_file=/var/log/vsftpd.log #設置日誌文件的文件名和存儲路徑,這是默認的 xferlog_std_format=YES #是否使用標準的ftpd xferlog日誌文件格式 listen=YES #使vsftpd 處於獨立啓動模式 user_config_dir=/etc/vsftpd/vuser_dir #使用虛擬用戶配置文件的目錄 pam_service_name=/etc/pam.d/vsftpd #設置PAM認證服務的配置文件名稱,該文件存放在/etc/pam.d/目錄下. userlist_enable=NO #用戶列表中的用戶是否允許登錄FTP服務器,默認是不允許 chroot_list_enable=YES #如果希望用戶登錄後不能切換到自己目錄以外的其它目錄,需要設置該項 tcp_wrappers=YES #使用tcp_wrqppers作爲主機訪問控制方式 guest_enable=YES #是否啓用來賓用戶(也就是啓用虛擬用戶) guest_username=root #如果啓用了虛擬用戶後上傳文件修改文件的用戶名 chown_uploads=YES #是否啓用上傳文件後修改爲指定的屬主 chown_username=root #是否啓用上傳文件後修改爲指定的屬主用戶
3、在/etc/vsftpd/下創建兩個目錄
vuser_db #後續存放虛擬用戶的配置文件
vuser_dir #存放虛擬用戶的認證文件
[root@master vsftpd]# mkdir vuser_db vuser_dir [root@master vsftpd]# cd vuser_db/ [root@master vuser_db]#vim login_user
#以下是login_vuser虛擬用戶的帳號密碼格式,奇數行爲用戶名,雙數行爲密碼
user001
password
#生成數據庫文件
#選項-T允許應用程序能夠將文本文件轉譯載入進數據庫。由於我們之後是將虛擬用戶的信息以文件方式存儲在文件裏的,爲了讓Vsftpd這個應用程序能夠通過文本來載入用戶數據,必須要使用這個選項。
如果指定了選項-T,那麼一定要追跟子選項-t
子選項-t,追加在在-T選項後,用來指定轉譯載入的數據庫類型。擴展介紹下,-t可以指定的數據類型有Btree、Hash、Queue和Recon數據庫。
-f:參數後面接包含用戶名和密碼的文本文件,文件的內容是:奇數行用戶名、偶數行密碼
[root@master vuser_db]# db_load -T -t hash -f /etc/vsftpd/vuser_db/login_vuser /etc/vsftpd/vuser_db/user.db
4、更改pam認證模塊
[root@master vuser_db]# cd /etc/pam.d/ [root@master vuser_db]# vim vsftpd
#最後面的vuser就是user.db,但是這裏的後綴不是需要寫的
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_db/user account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_db/user
5、爲虛擬用戶創建對應的文件
[root@master vuser_dir]# vim user001 anon_world_readable_only=NO write_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES local_root=/data/www/test #指定虛擬用戶有權限登錄到哪個目錄 chown_upload_mode=0777 #虛擬用戶上傳文件的權限設置
到這裏基本上算是配置完成了,啓動vsftpd服務了:
root@master vsftpd]# service vsftpd start