ftp的用户类型:
匿名用户:ftp或anonymous
本地用户:帐号和密码保存在passwd,shadow文件中
虚拟用户:使用独立的帐号/密码数据文件
默认的情况下,安装后,可以使用匿名用户登录
这个时候有个共享目录在/var/ftp/下有个pub目录,
用户可以使用 ftp://IP访问ftp,同时可以实现下载。
如果使用本地用户,登录可以进入用户的家目录。
但是为了vsftp的安全性,我们通常建立虚拟用户来让用户
登录,从而下载资源,接下来就讲述vsftp的虚拟用户的登
录。
构建虚拟用户的vsftpd服务器步骤:
1、建立虚拟FTP用户的账号数据库文件
2、创建FTP根目录及虚拟用户映射的系统用户
3、创建支持虚拟用户的PAM认证文件
4、在vsftpd.conf文件中添加支持配置
5、为个别虚拟用户创建独立的配置文件
6、重新加载vsftpd配置
7、使用虚拟FTP账户访问测试
接下来就借助我的虚拟机做具体的配置:
建立虚拟用户的帐号和密码列表
#vim /etc/vsftpd/vusers.list
mike
123
john
456
#cd /etc/vsftpd/
#yum install db4-utils
#db_load -T -t hash -f vusres.list vusers.db //转换为二进制格式
#file vuser.db
#chown 600 /etc/vsftpd/vusers.*
创建FTP根目录及虚拟用户映射的系统用户
#mkdir /var/ftproot
#useradd -d /var/ftproot -s /sbin/nologin virtual
#chmod 755 /var/ftproot
建立支持虚拟用户的PAM认证文件
#vim /etc/pam.d/vsftpd.vu
#%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/vusers
account required pam_userdb.so db/etc/vsftpd/vusers
在vsftpd.conf中添加支持的配置
#vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
local_enable=YES
write_enable=YES
anon_umask=022
guest_enable=YES
guest_username=virtual
pam_service_name=vsftpd.vu
为个别虚拟用户建立独立的配置文件
在vsftpd.conf中添加用户配置目录支持
user_config_dir=/etc/vsftpd/vuser_dir
为用户mike,jone建立独立的配置目录及文件
#mkdir /etc/vsftpd/vusers_dir
#cd !$
#touch mike
#vim john
anon_upload_enable=YES
anon_mkdir_enable=YES
测试
分别使用mike和jone用户登录进行测试
mike用户可以登录,并可以浏览、下载文件,但无法上传
john用户可以登录,并可以浏览、下载文件,也可以上传
匿名用户或其他系统用户将不能登录
转载于:https://blog.51cto.com/luoweiro/651051