1 操作系统 : redhat 6.5
IP 地址 : 192.168.10.128
主机名 : zred
2 操作系统:win 7
IP地址: 192.168.10.10
确认两台主机互联互通。
要求:添加一个虚拟用户用来访问ftp。
首先我们把服务重新启动
添加虚拟账户
编辑一个文件vuser
[root@localhost vsftpd]# vim /etc/vsftpd/vuser
写两个用户进去
把vuser转换成数据库文件以便PAM识别
[root@localhost vsftpd]# db_load -T -t hash -f vuser vuser.db
再修改一下文件权限,可以加强安全,以免被他人窥视。
创建一个用户为vuser 指定家目录/opt/vuser 并不使用shell登陆
[root@localhost vsftpd]# useradd -d /opt/vuser -s /sbin/nologin vuser![10722140155_thumb[1] 技术分享图片](http://i2.51cto.com/images/blog/201807/22/b14c9fcbf6c213ba9fcbab703c0e521c.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
编辑pam认证模块支持虚拟用户的登陆
[root@localhost vsftpd]# vi /etc/pam.d/vsftpd.vu
添加两句进去
auth required pam_userdb.so db=/etc/vsftpd/vuser    //a会丢失
account required pam_userdb.so db=/etc/vsftpd/vuser /*此处两个文件vuser并不是普通文件而是刚才创建的vuser.db数据库文件,此处必须省略不写*/
编辑主配置文件,末行添加来宾用户的权限语句
guest_enable=YES
guest_username=vuser
pam_service_name=vsftpd.vu
重启服务,尝试登陆
我们还可以指定单独的配置文件夹
在主配置文件末插入:
user_config_dir=/etc/vsftpd/vu_dir /*单独用户配置文件夹*/
创建配置文件
mkdir vu_dir 
vi /etc/vsftpd/vu_dir/tom /*在配置文件夹里创建用户配置文件*/
anon_umask=022 /*指定上传文件的权限*/
原文:http://blog.51cto.com/13706064/2148491