虛擬使用者就是傳說中的ftp服務vip使用者,大致分為這麼幾步:
1、安裝ftp軟體包
yum install *ftp*
2、啟動vsftpd服務
/etc/init.d/vsftpd restart 或 service vsftpd restart
3、建立vip使用者的目錄和家目錄
mkdir /var/userdate/
mkdir user1
mkdir user2
4、所有者,所屬組改為虛擬使用者登陸ftp服務借用那個本地使用者的身份登陸。
drwxr-xr-x. 2 xiaohong xiaohong 4096 Apr 26 09:54 user1
drwxr-xr-x. 2 xiaohong xiaohong 4096 Apr 26 09:48 user2
[root@redhat userdate]# ll user1
total 0
-rw-r--r--. 1 root root 0 Apr 26 09:54 file1
5、開啟ftp使用者的家目錄
[root@redhat userdate]# getsebool -a | grep ftp
allow_ftpd_anon_write --> off
allow_ftpd_full_access --> off
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
ftp_home_dir --> on
ftpd_connect_db --> off
ftpd_use_passive_mode --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off
6、vip使用者的管理檔案:
自己建立,檔案內的格式照下面的寫,
[root@redhat vsftpd]# cat users
user1
123
user2
123
7、給vip使用者的使用者名稱,密碼加密:
[root@redhat vsftpd]# db_load -T -t hash -f users login.db
ftp服務使用hash加密認證,給users檔案加密,加密後生成檔案login檔案
8、指定使用者訪問的密碼檔案
[root@redhat vsftpd]# cd -
/etc/pam.d
[root@redhat pam.d]# cat ftppasswd 這個檔案自己起名字,只要在、etc/pam.d下面就好
auth required pam_userdb.so db=/etc/vsftpd/login 推薦使用vim編輯器,帶色的寫錯了容易看出來。
account required pam_userdb.so db=/etc/vsftpd/login
7、配置ftp的配置檔案vsftpd.conf在檔案末尾加入:
pam_service_name=ftppasswd
userlist_enable=YES
guest_enable=yes
guest_username=xiaohong
local_root=/var/userdate/$USER
user_sub_token=$USER
8、重啟ftp服務,刷掉火牆,就ok了
service vsftpd restart
service iptables stop
9、驗證:
[root@redhat vsftpd]# lftp 192.168.0.1 -u user1
Password:
lftp user1@192.168.0.1:~> ls
-rw-r--r-- 1 0 0 0 Apr 26 01:54 file1
lftp user1@192.168.0.1:/>
就這麼簡單。。