1.安裝vsftpd服務
[[email protected] ~]# yum install -y vsftpd
2.修改vsftpd配置檔案vsftpd.conf
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO //設定不允許匿名通路,把yes改為no
3.以下這些事關于vsftpd虛拟使用者支援的重要配置項,預設vsftpd.conf中不包含這些設定項目,需要直接手動添加
guest_enable=YES //設定啟用虛拟使用者功能
guest_username=virtual //指定虛拟使用者的宿主使用者
user_config_dir=/etc/vsftpd/vusers_dir //設定虛拟使用者個人vsftp的CentOS FTP服務檔案存放路徑。
4.建立使用者密碼文本/etc/vsftpd/vuser.list,注意奇數行是使用者名,偶數行是密碼。
[[email protected] vsftpd]# vim vuser.list
user1
123456
user2
123456
5.生成虛拟使用者認證的db檔案,删除源檔案并db檔案修改權限
[[email protected] vsftpd]# db_load -T -t hash -f vuser.list vuser.db
[[email protected] vsftpd]# rm -f vuser.list
[[email protected] vsftpd]# chmod 600 vuser.db
6.建立虛拟使用者,設定預設使用者路徑,并設定虛拟使用者不能登入。修改預設路徑的權限
[[email protected] vsftpd]# useradd -d /var/ftproot -s /sbin/nologin virtual
[[email protected] vsftpd]# chmod 755 /var/ftproot
7.編輯認證檔案/etc/pam.d/vsftpd, 全部注釋掉原來語句,再增加以下兩句
[[email protected] vsftpd]# vi /etc/pam.d/vsftpd
#%PAM-1.0
#session optional pam_keyinit.so force revoke
#auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
#auth required pam_shells.so
#auth include password-auth
#account include password-auth
#session required pam_loginuid.so
#session include password-auth
auth required pam_userdb.so db=/etc/vsftpd/vuser
account required pam_userdb.so db=/etc/vsftpd/vuser
8.建立虛拟使用者配置檔案
[[email protected] vsftpd]# mkdir /etc/vsftpd/vusers_dir
[[email protected] vsftpd]# cd /etc/vsftpd/vusers_dir
[[email protected] vsftpd]# touch user1
[[email protected] vsftpd]# vim user2
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
9.設定selinux
[[email protected] vsftpd]# setenforce 0 //臨時關閉seLinux
[[email protected] vsftpd]# vim /etc/selinux/config
修改為 ————》SELINUX=disabled //需要重新開機生效
10.關閉iptables防火牆
[[email protected] vsftpd]# service iptables stop //暫停防火牆
[[email protected] vsftpd]# iptables -F
[[email protected] vsftpd]# iptables -X //清除防火牆規則
[[email protected] vsftpd]# iptables -Z
[[email protected] vsftpd]# service iptables save //儲存防火牆規則
11.建立測試檔案
[[email protected] ~]# cd /var/ftproot/
[[email protected] ftproot]# touch test
[[email protected] ftproot]# ls
test
12.在Windows打開檔案管理器,在位址欄輸入ftp://ip位址
使用者名:user2
密碼:123456