1、yum安装vsftpd程序:
[root@master ~]# yum install vsftpd -y
2、备份修改配置文件
[root@master ~]# cd /etc/vsftpd   
[root@master vsftpd]# cp vsftpd.conf{,.bak}    
[root@master vsftpd]# grep –v ‘#’ vsftpd.conf    
anonymous_enable=NO  #是否允许anonymous登录FTP服务器,默认是允许的。    
local_enable=YES  #是否允许本地用户登录FTP服务器,默认是允许    
write_enable=YES  #是否允许用户具有在FTP服务器文件中执行写的权限,默认是允许    
anon_umask=022  #设置虚拟用户的文件生成掩码为022,默认是077    
dirmessage_enable=YES  #激活目录信息,当远程用户更改目录时,将出现提示信息    
xferlog_enable=YES  #启用上传和下载日志功能    
connect_from_port_20=YES  #启用FTP数据端口的连接请求    
xferlog_file=/var/log/vsftpd.log  #设置日志文件的文件名和存储路径,这是默认的    
xferlog_std_format=YES  #是否使用标准的ftpd xferlog日志文件格式    
listen=YES  #使vsftpd 处于独立启动模式    
user_config_dir=/etc/vsftpd/vuser_dir  #使用虚拟用户配置文件的目录    
pam_service_name=/etc/pam.d/vsftpd  #设置PAM认证服务的配置文件名称,该文件存放在/etc/pam.d/目录下.    
userlist_enable=NO  #用户列表中的用户是否允许登录FTP服务器,默认是不允许    
chroot_list_enable=YES  #如果希望用户登录后不能切换到自己目录以外的其它目录,需要设置该项    
tcp_wrappers=YES  #使用tcp_wrqppers作为主机访问控制方式    
guest_enable=YES  #是否启用来宾用户(也就是启用虚拟用户)    
guest_username=root  #如果启用了虚拟用户后上传文件修改文件的用户名    
chown_uploads=YES  #是否启用上传文件后修改为指定的属主    
chown_username=root  #是否启用上传文件后修改为指定的属主用户
3、在/etc/vsftpd/下创建两个目录
vuser_db  #后续存放虚拟用户的配置文件   
vuser_dir  #存放虚拟用户的认证文件    
[root@master vsftpd]# mkdir vuser_db vuser_dir    
[root@master vsftpd]# cd vuser_db/    
[root@master vuser_db]#vim login_user    
#以下是login_vuser虚拟用户的帐号密码格式,奇数行为用户名,双数行为密码    
user003    
20150105    
user004    
20150106    
user005    
20150107    
#生成数据库文件    
#选项-T允许应用程序能够将文本文件转译载入进数据库。由于我们之后是将虚拟用户的信息以文件方式存储在文件里的,为了让Vsftpd这个应用程序能够通过文本来载入用户数据,必须要使用这个选项。    
如果指定了选项-T,那么一定要追跟子选项-t    
子选项-t,追加在在-T选项后,用来指定转译载入的数据库类型。扩展介绍下,-t可以指定的数据类型有Btree、Hash、Queue和Recon数据库。    
-f:参数后面接包含用户名和密码的文本文件,文件的内容是:奇数行用户名、偶数行密码    
[root@master vuser_db]# db_load -T -t hash -f /etc/vsftpd/vuser_db/login_vuser /etc/vsftpd/vuser_db/user.db 
4、更改pam认证模块
[root@master vuser_db]# cd /etc/pam.d/   
[root@master vuser_db]# vim vsftpd    
#最后面的vuser就是user.db,但是这里的后缀不是需要写的    
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_db/user    
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_db/user 
5、为虚拟用户创建对应的文件
[root@master vuser_dir]# vim user001   
anon_world_readable_only=NO    
write_enable=YES    
anon_upload_enable=YES    
anon_mkdir_write_enable=YES    
anon_other_write_enable=YES    
local_root=/data/www/test  #指定虚拟用户有权限登录到哪个目录    
chown_upload_mode=0777  #虚拟用户上传文件的权限设置
到这里基本上算是配置完成了,可以启动vsftpd服务了:
root@master vsftpd]# service vsftpd start
原文地址:http://7280780.blog.51cto.com/7270780/1713430