CentOS6.2 x64 下 配置vsftpd虚拟用户服务器

发布时间:2019-09-10编辑:脚本学堂
CentOS6.2 x64 下 配置vsftpd虚拟用户服务器

最近由于公司项目需要,配置了一个简单的vsftpd服务器
结合网上的资料,整理了配置步骤,分享给大家,以供学习参考。

一、安装vsftpd需要的组件

复制代码 代码如下:
[root@localhost ~]# yum -y install pam*
[root@localhost ~]# yum -y install db4*
[root@localhost ~]# yum -y install vsftpd*

二、建立虚拟用户
 [root@localhost ~]#vi /etc/vsftpd/vftpusers.txt
  添加虚拟用户名和密码,奇数行为用户名,偶数行为密码
  ftpusers
  123456
  Ftpusers1
  123456

三、生成虚拟用户口令认证文件
[root@localhost ~]# db_load -T -t hash -f /etc/vsftpd/vftpusers.txt /etc/vsftpd/vftpusers.db

四、编辑vsftpd的PAM认证
[root@localhost ~]# vi /etc/pam.d/vsftpd
将原有内容全部注释,并在最后添加如下两行(32位系统下需将lib64改为lib):
 

复制代码 代码如下:
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpusers
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpusers  

五、建立本地映射用户并设置宿主权限
[root@localhost ~]# useradd -d /app/syncdata -s /sbin/nologin vftpusers
[root@localhost ~]#chmod 776 /app/syncdata
 
六、配置 vsftpd.conf (设置虚拟用户配置项)
可上传、下载、不能删除和创建目录
[root@localhost ~]# vi /etc/vsftpd/vsftpd.conf

复制代码 代码如下:

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_umask=002
anon_upload_enable=YES
anon_other_write_enable=NO
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=NO   #pasv模式,port模式则设为YES
listen_port=2121
pasv_min_port=65000
pasv_max_port=65100
chown_uploads=NO
xferlog_std_format=YES
nopriv_user=vftpusers
async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
chroot_local_user=YES
ls_recurse_enable=NO
listen=YES
 
guest_enable=YES
guest_username=vftpusers

#virtual_use_local_privs=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
hide_file=.*

七、关闭selinux
[root@localhost ~]# vi /etc/selinux/config
将SELINUX=enforcing修改为SELINUX=disabled
重启服务器

八、测试登录
  [root@localhost ~]# service vsftpd restart
  重启vsftpd服务 然后测试登录。

九、建立各个虚拟用户自身的配置文件
  [root@localhost ~]#mkdir /etc/vsftpd/vftpusers_conf

  编辑ftpusers文件
  [root@localhost ~]#vi /etc/vsftpd/vsftpd_user_conf/ftpusers
   添加
  anon_other_write_enable=YES #开放ftpusers的删除权限。

 其它虚拟用户的配置文件,依次建立同名配置文件并写入需要的配置即可
 vsftpd的配置文件要增加虚拟用户配置文件的选项
 [root@localhost ~]#vi /etc/vsftpd/vsftpd.conf

 增加如下行:
 user_config_dir=/etc/vsftpd/vsftpd_user_conf #设定用户配置文件存放目录

十、虚拟用户高级设置(这部分很重要哦)
 1、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时,虚拟用户只能下载、删除和重命名文件,无其他权限

您可能感兴趣的文章:
vsftpd安装及虚拟用户认证的配置方法
ubuntu vsftpd虚拟用户配置
CentOS 6.2 配置vsftpd虚拟用户的方法
vsftpd配置虚拟用户的方法介绍
vsftpd虚拟用户创建实例
vsftpd虚拟用户配置的总结
CentOS 5.3建立Vsftpd虚拟用户
vsftpd下创建虚拟用户的方法
vsftp 虚拟用户高级设置