1.首先创建账号列表,基数行为账号,偶数行为密码。

vim /etc/vsftpd/user.list
down
down
up
up



2.安装vsftp和加密程序,系统光盘都有这两个软件。

 rpm -Uvh /media/cdrom/Server/vsftpd-2.0.5-10.el5.i386.rpm
 rpm -Uvh /media/cdrom/Server/db4-utils-4.3.29-9.fc6.i386.rpm



加密账号密码

cd /etc/vsftp/user.list
db_load -T -t hash -f user.list user.db
file user.db
   user.db: Berkeley DB (Hash, version 8, native byte-order)
chmod 600 user.*



3.在系统中添加虚拟宿主账号,需要指定根目录,指定后会自动创建。

useradd -d /var/ftproot -s /sbin/nologin virtual
chmod 755 /var/ftproot



4.#为虚拟服务添加PAM文件

vim /etc/pam.d/vsftpd

32位系统增加以下两句:
authrequired  /lib/security/pam_userdb.so  db=/etc/vsftpd/user
accountrequired  /lib/security/pam_userdb.so  db=/etc/vsftpd/user

64位系统增加以下两句:
auth   required    /lib64/security/pam_userdb.so db=/etc/vsftpd/useraccount
 required    /lib64/security/pam_userdb.so    db=/etc/vsftpd/user




5.创建并配置虚拟用户文件

mkdir /etc/vsftpd/virtual_dir

vim /etc/vsftpd/virtual_dir/down         //只允许下载文件
local_root=/var/ftproot/down                  //指定共享文件路径             
download_enable=YES
write_enable=NO
anon_upload_enable=YES

vim /etc/vsftpd/virtual_dir/up         //只允许上传文件
local_root=/var/ftproot/up          
anon_mkdir_write_enable=YES                          
anon_upload_enable=YES
download_enable=NO
anon_umask=022
mkdir /var/ftproot/down
mkdir /var/ftproot/up
chown -R virtual.virtual /var/ftproot/down
chown -R virtual.virtual /var/ftproot/up



6.配置vsftp.conf文件

vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO      //不启用匿名用户
local_enable=YES            //是否允许本地用户登陆
write_enable=YES           //是否可写入
local_umask=022             //权限反码,即为755
dirmessage_enable=YES      
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
guest_enable=YES                  //启用虚拟用户功能
guest_username=virtual               // 指定虚拟用户的宿主用户
user_config_dir=/etc/vsftpd/vuser_dir   //设置虚拟用户个人vsftp的服务配置文件
pam_service_name=vsftpd              //pam认证文件名在/etc/pam.d/vsftpd
userlist_enable=YES                   
tcp_wrappers=YES



7.验证是否成功,关闭selinux减少对实验的其他影响因素。

    setenforce  0

a)down

          

vsftp配置虚拟用户_第1张图片

下载文件


vsftp配置虚拟用户_第2张图片

无法上传,写入。

vsftp配置虚拟用户_第3张图片


b)up账号

  vsftp配置虚拟用户_第4张图片

   

  可以上传文件

vsftp配置虚拟用户_第5张图片

   无法下载文件。

vsftp配置虚拟用户_第6张图片



常用权限组合:

-------------------------

1.可浏览
anon_world_readable_only=no

1-1.禁浏览
anon_world_readable_only=yes (默认设置)

2.可上传
write_enable=yes
anon_upload_enable=yes

3.浏览+下载+上传
anon_world_readable_only=no
write_enable=yes
anon_upload_enable=yes

4.浏览+下载+上传+删除
anon_world_readable_only=no
write_enable=yes
anon_upload_enable=yes
anon_other_write_enable=yes

5.浏览+下载+上传+创建目录+删除
anon_world_readable_only=no
write_enable=yes
anon_upload_enable=yes
anon_other_write_enable=yes
anon_mkdir_write_enable=yes

6.浏览+下载+上传+创建目录+不可删除
anon_world_readable_only=no
write_enable=yes
anon_upload_enable=yes
anon_other_write_enable=no (或取消本项参数)
anon_mkdir_write_enable=yes



本文允许转载但务必保留出处:http://dragon123.blog.51cto.com/9152073/1547540