vsftp建立虛擬用戶不同目錄分配不同權限操作步驟詳解
vsftpd服務器同時支持匿名用戶、本地用戶和虛擬用戶三類用戶賬號,使用虛擬用戶賬號可以提供集中管理的FTP根目錄,方便了管理員的管理,同時將用于FTP登錄的用戶名、密碼與系統用戶賬號區別開,進一步增強了FTP服務器的安全性。
1、在/etc/vsftpd/vsftpd.conf加入或者更改以下配置語句:
復制代碼 代碼如下:
anonymous_enable=NO (當然你也可以設成YES,同時允許匿名用戶登陸)
local_enable=YES (必須置YES,因為虛擬用戶是映射到virtual這個本地用戶來訪問的)
guest_enable=YES(啟用虛擬用戶)
guest_username=virtual(第5步中創建,將虛擬用戶映射為本地virtual用戶)
pam_service_name=vsftpd.vu(第2步中創建,指定PAM配置文件,文件已經在/etc/pam.d/存在)
user_config_dir=/etc/vsftpd/user_conf(第7,8步中創建,指定不同虛擬用戶配置文件的存放路徑)
2、在/etc/pam.d/中修改文件vsftpd.vu, 對比修改內容:
復制代碼 代碼如下:
auth required pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required pam_userdb.so db=/etc/vsftpd/vsftpd_login
(/etc/vsftpd/vsftpd_login 在第3,4步中創建,用戶賬號密碼數據庫文件)
3、建立用戶列表/tmp/logins.txt 內容如下
復制代碼 代碼如下:
web (帳號)
****** (用戶密碼)
download (帳號)
******* (用戶密碼)
admin (帳號)
******* (用戶密碼)
注意:不要有空行,一行賬號 一行密碼;奇數行為帳號,偶數行為密碼
4、建立訪問者數據文件(如果沒有可以安裝:yum install db4-utils)
#db_load -T -t hash -f /tmp/logins.txt /etc/vsftpd/vsftpd_login.db
5、建立本地虛擬用戶:
復制代碼 代碼如下:
#useradd -d /home/ftp -s /sbin/nologin virtual
6、在/home/ftp/創建目錄并改變其屬性和它的宿主
復制代碼 代碼如下:
#chown virtual /home/ftp
#chmod 700 /home/ftp
7、創建ftp用戶配制文件目錄:/etc/vsftpd/user_conf
復制代碼 代碼如下:
#mkdir /etc/vsftpd/user_conf
8、在/etc/vsftpd/user_conf目錄中創建以用戶名命名的配置文件web、download、admin
“download”文件內容如下:
復制代碼 代碼如下:
local_root=/home/ftp (當然,你高興也可以設置成其它,但要注意virtual用戶對此目錄的權限)
anon_world_readable_only=NO (使download用戶的能下載,也只能下載;寫成YES,將不能列出文件和目錄)
“admin”文件內容如下:
復制代碼 代碼如下:
local_root=/home/ftp
anon_world_readable_only=NO
write_enable=YES (寫權限)
anon_mkdir_write_enable=YES (新建目錄權限)
anon_upload_enable=YES(上傳權限)
anon_other_write_enable=YES(刪除/重命名的權限)
“web”文件內容如下:
復制代碼 代碼如下:
local_root=/var/www
anon_world_readable_only=NO
anon_umask=022 (由于web頁面的特殊性,故單獨設置上傳文件權限為755,此掩碼值可根據具體情況更改)
write_enable=YES (寫權限)
anon_mkdir_write_enable=YES (新建目錄權限)
anon_upload_enable=YES(上傳權限)
anon_other_write_enable=YES(刪除/重命名的權限)
9、最后,重新啟動VSFTPD
復制代碼 代碼如下:
#/etc/init.d/vsftpd restart
相關文章:
