一:簡介
ftp中的用戶:
1.系統實體賬戶:這些賬戶默認登錄的家目錄是自己的home目錄,並且可以任意切換目錄,如果要使用系統帳號作爲ftp帳號,最好讓將這些用戶禁錮在自己的家目錄中,並
且設置這些用戶的shell爲/sbin/nologin
2.匿名用戶:一般就給下載權限即可,默認登錄後的主目錄在/var/ftp
3.虛擬賬戶:相對比較安全這些用戶都不是系統賬戶,只具有對ftp的相關操作權限,可以自定義用戶主目錄
虛擬賬號即是系統中不存在的帳號,其目的是實現安全
二:案例
案例要求:使用虛擬賬號登錄ftp服務器
配置步驟:
編輯虛擬賬號
[root@localhost vsftpd]# vim viruser.txt
test
123
test1
123
test2
123
~
把虛擬賬號文件轉變成數據庫
首先安裝db4-utils-4.3.29-10.el5.i386.rpm
[root@localhost Server]# rpm -ivh db4-utils-4.3.29-10.el5.i386.rpm
Preparing... ########################################### [100%]
1:db4-utils ########################################### [100%]
[root@localhost vsftpd]# db_load -T -t hash -f viruser.txt viruser.db
編輯接口文件
[root@localhost vsftpd]# vim /etc/pam.d/vsftpd
#%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/viruser
account required pam_userdb.so db=/etc/vsftpd/viruser
虛擬賬號映射到真實帳號
建立帳號
[root@localhost vsftpd]# useradd user8
編輯vsftpd配置文件
[root@localhost vsftpd]# vim /etc/vsftpd/vsftpd.conf
129 guest_enable=YES
130 guest_username=user8
進入user8家目錄,新建文件
[root@localhost ~]# cd /home/user8
[root@localhost user8]# touch nxl
修改權限
[root@localhost home]# chmod a+rx user8
[root@localhost vsftpd]# service vsftpd restart
關閉 vsftpd: [確定]
爲 vsftpd 啓動 vsftpd: [確定]
測試:
設置匿名帳號和本地賬號速度
編輯配置文件
[root@localhost home]# vim /etc/vsftpd/vsftpd.conf
anon_max_rate=100000
local_max_rate=1000000
創建一個文件用於測試
[root@localhost pub]# cd /var/ftp/pub/
[root@localhost pub]# dd if=/dev/zero of=nxl bs=1M count=1
1+0 records in
1+0 records out
1048576 bytes (1.0 MB) copied, 0.00297739 seconds, 352 MB/s
[root@localhost pub]# ll
總計 1028
-rw-r--r-- 1 root root 1048576 08-20 00:03 nxl
[root@localhost home]# service vsftpd restart
關閉 vsftpd: [確定]
爲 vsftpd 啓動 vsftpd: [確定]
用匿名帳號登錄
用系統帳號登錄