vsftpd虚拟用户配置【虚拟用户映射到系统账号vuser{禁止该账户登录}登录ftp】

文章来源:

http://www.cnblogs.com/wubz/archive/2012/04/15/2450421.html

Vsftpd虚拟用户配置总结:

 

1、  安装vsftpd  rpm包或者用yum安装

2、  在/etc/vsftpd/下创建vuser.txt文件,在里面填写用户名和账号,第一行账号,第二行密码,依次类推。

3、  建立访问者的口令库文件,然后修改其权限

db_load –T –t hash –f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.db

(如果系统提示找不到db_load命令,则需先安装yum –y install db4 (pam*是否需安装没经过测试)

4、  进入/etc/pam.d/中创建vsftpd.vuser

在其中添加如下信息:
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser    (32位系统是/lib/目录)
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser  (32位系统是/lib/目录)


5、  创建虚拟用户映射的系统账号

Useradd –d /home/vsftpd –s /sbin/nologin vuser   (创建系统账号,但使之不能登录系统)

#Chmod 700 /home/vsftpd

6、  先备份/etc/vsftpd/vsftpd.conf文件,然后清空内容并添加如下信息:

listen=yes

listen_port=21

#port_enable=yes

#connect_from_port_20=yes

 

pasv_enable=yes           #使用被动传输

pasv_min_port=52000       #指定被动模式端口范围

pasv_max_port=52020

 

local_enable=YES           #使系统账号能登录

write_enable=YES           #可写

#anon_root=/var/ftp/vuser

#local_root=/

#local_umask=022

userlist_enable=yes         

userlist_deny=yes

userlist_file=/etc/vsftpd/user_list

max_clients=20            #连接ftp的最大客户端

max_per_ip=20            #最多20个IP能连接ftp

 

guest_enable=yes                              #启用虚拟用户

user_config_dir=/etc/vsftpd/vsftpd_vuser_conf      #虚拟用户配置文件存放目录  

guest_username=vuser                         #虚拟用户映射到的系统账号

pam_service_name=vsftpd.vuser                 #PAM认证文件

 

7、  创建虚拟用户配置文件存放目录

mkdir /etc/vsftpd/vsftpd_vuser_conf

8、  进入/etc/vsftpd/vsftpd_vuser_conf目录,创建与虚拟用户名相同名称的文件(虚拟用户名即vuser.txt中的用户名名),比如创建demo

9、  在demo中填写如下信息

write_enable=YES

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

local_root=/usr/local/amp/apache/htdocs/demo  (此路径根据虚拟用户要访问的目录对应修改)

 

总结:客户端根据创建的虚拟用户连接服务器,虚拟用户映射到系统账号vuser登录ftp,然后FTP根据配置文件vsftpd.conf的设置(user_config_dir=/etc/vsftpd/vsftpd_vuser_conf)找到虚拟用户配置文件的存放目录,然后根据虚拟用户的配置文件指定的目录路径(local_root=/usr/local/amp/apache/htdocs/demo)访问到指定的目录。(注:虚拟用户访问到的文件根目录属主需要改成vuser)


你可能感兴趣的:(vsftpd虚拟用户配置【虚拟用户映射到系统账号vuser{禁止该账户登录}登录ftp】)