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