CentOS vsftpd虛擬用戶的配置
制作虛擬用戶數(shù)據(jù)庫文件
1.先建立虛擬用戶名單文件:[root@KcentOS5 ~]# touch /etc/vsftpd/virtusers建立了一個虛擬用戶名單文件,這個文件就是來記錄CentOS vsftpd虛擬用戶的用戶名和口令的數(shù)據(jù)文件,我這里給它命名為virtusers。為了避免文件的混亂,我把這個名單文件就放置在/etc/vsftpd/下。
2.編輯虛擬用戶名單文件:
- [root@KcentOS5 ~]# vi /etc/vsftpd/virtusers
- download
- 1234
- upload
- 5678
- admin
- 9012
CentOS vsftpd編輯這個虛擬用戶名單文件,在其中加入用戶的用戶名和口令信息。格式很簡單:“一行用戶名,一行口令”。
3.生成虛擬用戶數(shù)據(jù)文件:
[root@KcentOS5 ~]# db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db設(shè)定PAM驗(yàn)證文件,并指定虛擬用戶數(shù)據(jù)庫文件進(jìn)行讀取在/etc/pam.d/vsftpd的文件頭部加入以下信息(在后面加入無效)
- auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers
- account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers
虛擬用戶的配置
local_root=/var/www/html指定虛擬用戶的具體主路徑。
anonymous_enable=NO設(shè)定不允許匿名用戶訪問。
write_enable=YES設(shè)定允許寫操作。
local_umask=022設(shè)定上傳文件權(quán)限掩碼。
anon_upload_enable=NO設(shè)定不允許匿名用戶上傳。
anon_mkdir_write_enable=NO設(shè)定不允許匿名用戶建立目錄。
idle_session_timeout=600設(shè)定空閑連接超時時間。
data_connection_timeout=120設(shè)定單次連續(xù)傳輸最大時間。
max_clients=10設(shè)定并發(fā)客戶端訪問個數(shù)。
max_per_ip=5設(shè)定單個客戶端的最大線程數(shù),這個配置主要來照顧Flashget、迅雷等多線程下載軟件。
local_max_rate=50000設(shè)定該用戶的最大傳輸速率,單位b/s。
這里將原CentOS vsftpd.conf配置文件經(jīng)過簡化后保存作為虛擬用戶配置文件的模版。這里將并不需要指定太多的配置內(nèi)容,主要的框架和限制交由CentOS vsftpd的主配置文件CentOS vsftpd.conf來定義,即虛擬用戶配置文件當(dāng)中沒有提到的配置項(xiàng)目將參考主配置文件中的設(shè)定。
而在這里作為虛擬用戶的配置文件模版只需要留一些和用戶流量控制,訪問方式控制的配置項(xiàng)目就可以了。這里的關(guān)鍵項(xiàng)是local_root這個配置,用來指定這個虛擬用戶的FTP主路徑。
[b][color=Red]這里有一個最主要的問題,就是目錄的宿主和宿主用戶不是虛擬用戶,我們設(shè)置了目錄后還只能下載,不能上傳和下載,如果想上傳就要使用chown的命令chmod o+w /var/www/html/ o是指其它的用戶,w是寫的權(quán)限[/[/color]b]
【編輯推薦】