原文:http://blog.csdn.net/luoshao20120430/article/details/16900653
http://blog.csdn.net/u010597230/article/details/53009034
Linux虛擬用戶的創建:
useradd [用戶名]這是能登錄的 useradd -s /sbin/nologin [用戶名]這是不能登錄的 -s是指定shell環境的選項 驗證的時候,假如當前是root賬戶,用su [你添加的用戶名] ,就能驗證了
虛擬用戶:在Linux系統中一些用戶是用來完成特定任務的,比如nobody和ftp 等,我們訪問LinuxSir.Org 的網頁程序,就是nobody用戶;我們匿名訪問ftp 時,會用到用戶ftp或nobody ;如果您想了解Linux系統的一些帳號,請查看 /etc/passwd ;
“就是那些不能登陸系統的用戶”
在本機上是不能登錄,因為/home下沒有user目錄
在系統中,沒有權限登錄系統的用戶一般也被稱之為虛擬用戶;虛擬用戶也是要寫進/etc/passwd中;
虛擬用戶實際上就是去掉了登錄SHELL權限的用戶,他沒有能力登錄系統,但可以進行其他任何操作。
安裝ftp服務:參考上個博文http://blog.csdn.net/u010597230/article/details/53007798
-
創建虛擬用戶映射的本地用戶及家目錄
[root@iZ28ldgf0u6Z ~]#useradd -d /home/ftp yunwei2
-
創建虛擬用戶文件並生成db文件
[root@iZ28ldgf0u6Z ~]#vim passwd.txt
[root@iZ28ldgf0u6Z ~]#db_load -T -t hash -f ./passwd.txt /etc/vsftpd/passwd.db
[root@iZ28ldgf0u6Z ~]#chmod 600 passwd.db 賦予權限
-
更改pam.d文件,默認其下已有vsftpd文件直接編輯更改
[root@iZ28ldgf0u6Z ~]#vim /etc/pam.d/vsftpd 注釋掉內的所有行添加如下兩行
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/passwd
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/passwd
##確認是lib下還是lib64下,根據實際情況確定,中間是tab而非空格##
-
編輯vsftpd配置文件
-
-
-
anonymous_enable=NO
-
local_enable=YES
-
write_enable=YES
-
local_umask=022
-
dirmessage_enable=YES
-
xferlog_enable=YES
-
connect_from_port_20=YES
-
chown_uploads=YES
-
ftpd_banner=Welcome to blah FTP service.
-
chroot_local_user=YES
-
chroot_list_enable=YES
-
chroot_list_file=/etc/vsftpd/chroot_list
-
listen=YES
-
pam_service_name=vsftpd pam文件名稱要一致
-
userlist_enable=YES
-
tcp_wrappers=YES
-
guest_enable=YES 開啟虛擬用戶
-
guest_username=yunwei2 將虛擬用戶映射到本地用戶,和之上創建用戶一致
-
user_config_dir=/etc/vsftp/aaa 虛擬用戶配置文件目錄
-
max_clients=100
-
max_per_ip=4
-
userlist_deny=YES
-
-
-
設置虛擬用戶配置文件
[root@iZ28ldgf0u6Z ~]#cd /etc/vsftp/aaa && vim aaa
-
-
-
local_root=/home/ftp
-
write_enable=YES
-
anon_umask=022
-
anon_world_readable_only=NO
-
anon_upload_enable=YES
-
anon_mkdir_write_enable=YES
-
anon_other_write_enable=YES
-
-
-
重啟服務登陸aaa用戶
打開瀏覽器輸入地址輸入虛擬用戶和密碼即可
注意:此時無法使用資源管理器登陸