第一步:创建记录虚拟帐号和密码的文件: vi /etc/vsftpd/xunizhanghao.txt
把所要创建的帐号和密码写进去,奇数行写帐号,偶数行写密码
例如:
abc
123456
第二步:把记录虚拟帐号和密码的文件转换成数据库:
这需要安装一个软件包:db4-utils-4.3.29-9.fc6.i386.rpm。
然后进行转换:db_load -T -t hash -f /etc/vsftpd/xunizhanghoa.txt /etc/vsftpd/xunizhanghao.db
再对xunizhanghao.db这个数据文件进行保护:chmod 600 xunizhanghao.db
第三步:指定PAM的认证文件:
首先在/etc/vsftpd/vsftpd.conf中将pam_service_name设置成了 vsftpd。
再编辑这个文件:vi /etc/pam.d/vsftpd,把原有的内容全部删掉或者注释掉,再写上:
auth required /lib/security/pam_userdb.so db=/etc/xunizhanghao
account required /lib/security/pam_userdb.so db=/etc/vsftpd/xunizhanghao
第四步:创建虚拟用户的主工作目录,也就是设置虚拟用户登陆FTP时的目录:
Useradd –d /home/ftp wisp
这里创建了一个用户,指定了他的用户主目录,这个帐号是为下一步工作的!
第五步:将虚拟帐号映射到wisp这个用户:
编辑vsftpd.conf文件:vi /etc/vsftpd/vsftpd.conf,清空内容,写入:
anonymous_enable=no
local_enable=yes
write_enable=no
anon_upload_enable=no
anon_mkdir_write_enable=no
anon_other_write_enable=no
#下面两行很重要:
guest_enable=yes #激活虚拟帐号
guest_username=wisp #将虚拟帐号映射为wisp这个帐号,这样用虚拟帐号登陆时实际是用wisp的主目录
anon_max_rate=0
data_connection_timeout=60
idle_session_timeout=600
max_clients=50
max_per_ip=10
use_localtime=yes
connect_from_port_20=yes
pam_service_name=vsftpd
listen=yes
tcp_wrappers=yes
xferlog_enable=yes
xferlog_std_format=yes
第六步:启动服务service vsftpd start
为每个虚拟用户分配不同的权限,这就是per user!
第一步:激活per user 配置:编辑vsftpd.conf文件 vi /etc/vsftpd/vsftpd.conf,加入user_config_dir=/etc/vsfptd/。这句的作用是指定虚拟用户的配置文件的位置。
第二步:建立虚拟用户配置文件:在/etc/vsftpd/目录下以虚拟用户的名称建立一个文件,我的虚拟用户名称为abc,所以我新建一个abc的文件vi /etc/vsftpd/abc !然后在里面写入想要分配给这个虚拟用户的权限相应的语句,和vsftpd.conf文件的语法一样!
第三步:启动服务器!