RHEL5 基于虚拟用户验证的VSFTP服务器

RHEL5 基于虚拟用户验证的 VSFTP 服务器
  1.生成虚拟用户口令库文件。为了建立此口令库文件,先要生成一个文本文件。该文件
的格式如下,单数行为用户名,偶数行为口令:
[root@stationx ~]# vim login.txt
vuser1
redhat
vuser2
redhat
vuser3
redhat
2.生成口令库文件,并修改其权限: (安装db4的包,解决db_load问题)
[root@stationx vsftpd]# db_load -T -t hash -f ./login.txt  /etc/login.db
[root@stationx vsftpd]# chmod 700 /etc/login.db

3 、设置认证文件只对 root 用户可读可写
# chmod 600 /etc/vsftpd/login.db
 
4.新建一个虚拟用户的PAM文件。在最上面加上如下两行内容:
#vim /etc/pam.d/vsftpd
auth required /lib/security/pam_userdb.so db=/etc/ftpusers.db
account required /lib/security/pam_userdb.so db=/etc/ftpusers.db
 
5 、建立所有 FTP 虚拟用户帐号使用的系统用户帐号,并设置该帐号家目录的权限。
# useradd -s /sbin/nologin �Cd /home/vftp vftp
 
6.编辑/etc/vsftpd/vsftpd.conf文件,使其整个文件内容如下所示(去掉了注释内容):
anonymous_enable=NO
local_enable=YES
write_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_local_user=YES (原文:choort_list_enable=YES)
ftpd_banner=Welcom to my FTP server.
guest_enable=YES
guest_username=ftpusers
listen=YES
pam_service_name=vsftpd
 
上面代码中,guest_enable=YES表示启用虚拟用户;guest_username=ftpusers则是将虚拟用户映射为本地用户,这样虚拟用户登录后才能进入本地用户virtual的目录/ftpsite;
pam_service_name=vsftpd指定PAM的配置文件为vsftpd
 
7 、配置虚拟用户名的设置
#mkdir -p /etc/vsftpd/user_config_dir (主配置文件对应)
#mkdir -p /ftpsite/vuser1
(创建虚拟用主目录)
#chmod -R 777 /ftpsite/vuser1
(设定权限)
 
依次建立vuser2 vuser3 用户
 
8、编辑配置文件  /etc/vsftpd/user_config_dir/vuser1 ( vuser1 权限配置文件 ), 内容如下:
anon_world_readable_only=NO
write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
local_root=/ftpsite/vuser1
anon_mkdir_write_enable=YES
同样方法建立 vuser2 vuser3 虚拟用户配置文件 .
 
9 、重新启动 vsftpd 服务程序
[root@stationx vsftpd]#service vsftpd restart
 
10、验证
[root@stationx /]# lftp 服务器IP
接着输入虚拟用户名、密码,进行验证。

你可能感兴趣的:(root,vsftp,用户,服务,休闲)