Linux(RHEL 7/CentOS 7) FTP服务器-VSFTPD虚拟用户配置

  • 内容
  • 相关

VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。安全性是编写VSFTP的初衷,除了这与生俱来的安全特性以外,高速与高稳定性也是VSFTP的两个重要特点。

在速度方面:使用ASCII代码的模式下载数据时,VSFTP的速度是Wu-FTP的两倍,如果Linux主机使用2.4.*的内核,在千兆以太网上的下载速度可达86MB/S。

在稳定方面:VSFTP就更加的出色,VSFTP在单机(非集群)上支持4000个以上的并发用户同时连接,根据RedHat的Ftp服务器(ftp.redhat.com)的数据,VSFTP服务器可以支持15000个并发用户.

本文主要介绍一下VSFTP虚拟用户模式配置方法:


配置虚拟用户(进入/etc/vsftpd下操作)

1. 建立虚拟用户口令库文件

# vim vusers.list (基数行写 用户名,偶数行写 密码,保存退出)

user1

user1pwd

user2

user2pwd


2. 生成vsftpd的认证文件

# db_load -T -t hash -f vusers.list /etc/vsftpd/vsftpd_login.db (生成认证文件)

# chmod 600 /etc/vsftpd/vsftpd_login.db (赋权)


3. 建立虚拟用户所需的PAM配置文件

# vim /etc/pam.d/vsftpd (加入下面内容,其他全部注释。或者自己新建一个文件!!!)

auth           required   pam_userdb.so   db=/etc/vsftpd/vsftpd_login

account    required   pam_userdb.so   db=/etc/vsftpd/vsftpd_login


4. 建立虚拟用户要访问的目录并设置权限

# useradd -d /home/ftp -s /sbin/nologin virtual

# chmod 777 /home/ftp/

在 vsftpd.conf 添加以下参数配置项:

guest_enable=YES                              //启用虚拟用户

guest_username=virtual                    //映射虚拟用户至系统用户virtual


5. 对不同虚拟用户设置不同权限

# mkdir /etc/vsftpd/vsftpd_user_conf

# vim /etc/vsftpd/vsftpd_user_conf/user1 (建立用户单独配置文件,文件名就是用户名)

local_root=/home/ftp/user1 #这里的虚拟用户目录可以根据实际情况修改

write_enable=YES

virtual_use_local_privs=YES           #虚拟用户具有写权限(上传、下载、删除、重命名)


在 vsftpd.conf 添加以下参数配置项:

user_config_dir=/etc/vsftpd/vsftpd_user_conf

6. 禁锢FTP用户在宿主目录

将需要禁锢的用户名写入“vsftpd/chroot_list”文件

# vim  /etc/vsftpd/chroot_list

user1

user2


在 vsftpd.conf 添加以下参数配置项:

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

————————————————————————

备注:virtual_use_local_privs参数

当virtual_use_local_privs=YES时,虚拟用户和本地用户有相同的权限;


当virtual_use_local_privs=NO时,虚拟用户和匿名用户有相同的权限,默认是NO。


当virtual_use_local_privs=YES,write_enable=YES时,虚拟用户具有写权限(上传、下载、删除、重命名)。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=YES,anon_upload_enable=YES时,虚拟用户不能浏览目录,只能上传文件,无其他权限。


当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_upload_enable=NO时,虚拟用户只能下载文件,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_upload_enable=YES时,虚拟用户只能上传和下载文件,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_mkdir_write_enable=YES时,虚拟用户只能下载文件和创建文件夹,无其他权限。

当virtual_use_local_privs=NO,write_enable=YES,anon_world_readable_only=NO,anon_other_write_enable=YES时,虚拟用户只能下载、删除和重命名文件,无其他权限。

 您阅读这篇文章共花了:

上一篇:VS2010版最常用的快捷键

下一篇:如何编辑更利于网站优化的文章?

本文标签:    

版权声明:本文依据CC-BY-NC-SA 3.0协议发布,若无特殊注明,本文皆为《fishyoung》原创,转载请保留文章出处。

本文链接:Linux(RHEL 7/CentOS 7) FTP服务器-VSFTPD虚拟用户配置 - http://www.fishyoung.com/post-63.html