Vsftpd虚拟用户的配置

第一步、安装

# wget http://docs.linuxtone.org/soft/lemp/CentOS-Base.repo

# yum clean all

# yum -y install vsftpd

# yum -y install db4-utils

第二步、建立虚拟用户

#vim /home/ftpusr.txt

1.  user1

2.  password1

3.  user2

4.  password2

5.  user3

6.  password4

格式为第一行为用户名名,第二行为密码,然后类推

建立db数据库,同时只有root用户才能读写

db_load -T -t hash -f /home/ftpusr.txt/etc/vsftpd/ftpusr.db

chmod 600 /etc/vsftpd/ftpuser.db

# db_load -T -t hash -f /home/ftpusr.txt/etc/vsftpd/vsftpd_login.db

# vim  /etc/pam.d/vsftpd_login

配置pam文件

# vim /etc/pam.d/vsftpd.login (64位系统)

1.  auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_ftpusr

2.  account required /lib64/security/pam_userdb.so db=/etc/vsftpd/ftpusr

# vim /etc/pam.d/vsftpd.vu (32位系统)---同上

1.  auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

2.  account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

建立虚拟用户对应的系统真实用户

useradd jboss -d /data -s /sbin/nologin

chown jboss.jboss /data

chmod 700 /data

注:在虚拟主机服务器上用nginx,用户为www,所以我的配置为虚拟用户为www

/sbin/nologin  表示不能通过telnet 进来;

第三步、修改配置文件

# cp /etc/vsftpd/vsftpd.conf/etc/vsftpd/vsftpd.conf.bak

# vim /etc/vsftpd/vsftpd.conf

1.  anonymous_enable=NO

2.  local_enable=YES

3.  #write_enable=NO

4.  dirmessage_enable=YES

5.  xferlog_enable=YES

6.  xferlog_file=/var/log/vsftpd.log

7.  connect_from_port_20=YES

8.  xferlog_std_format=YES

9.  listen=YES

10.listen_port=5222

11.userlist_enable=YES

12.chroot_local_user=YES

13.tcp_wrappers=YES

14.guest_enable=YES

15.guest_username=www

16.pam_service_name=vsftpd.vu

17.user_config_dir=/etc/vsftpd/vsftpd_user_conf

18.virtual_use_local_privs=YES

19.pasv_min_port=50000

20.pasv_max_port=50010

21.pasv_enable=yes

22.max_clients=200

23.max_per_ip=4

24.idle_session_timeout=600

25.ftpd_banner=Welcome to Windows2008 FTP Service.

注释如下:

anonymous_enable=NO

设定不允许匿名访问

local_enable=YES

设定本地用户可以访问。注意:主要是为虚拟宿主用户,如果该项目设定为NO那么所有虚拟用户将无法访问。

write_enable=YES

设定可以进行写操作。

local_umask=022

设定上传后文件的权限掩码。

anon_upload_enable=NO

禁止匿名用户上传。

anon_mkdir_write_enable=NO

禁止匿名用户建立目录。

dirmessage_enable=YES

设定开启目录标语功能。

xferlog_enable=YES

设定开启日志记录功能。

connect_from_port_20=YES

设定端口20进行数据连接。

chown_uploads=NO

设定禁止上传文件更改宿主。

xferlog_file=/var/log/vsftpd.log

设定Vsftpd的服务日志保存路径。注意,该文件默认不存在。必须要手动touch出来,并且由于这里更改了Vsftpd的服务宿主用户为手动建立的Vsftpd。必须注意给与该用户对日志的写入权限,否则服务将启动失败。

xferlog_std_format=YES

设定日志使用标准的记录格式。

nopriv_user=vsftpd

设定支撑Vsftpd服务的宿主用户为手动建立的Vsftpd用户。注意,一旦做出更改宿主用户后,必须注意一起与该服务相关的读写文件的读写赋权问题。比如日志文件就必须给与该用户写入权限等。

async_abor_enable=YES

设定支持异步传输功能。

ascii_upload_enable=YES

ascii_download_enable=YES

设定支持ASCII模式的上传和下载功能。

ftpd_banner=Welcome to Awei FTP servers

设定Vsftpd的登陆标语。

chroot_local_user=YES

禁止本地用户登出自己的FTP主目录。

pam_service_name=vsftpd

设定PAM服务下Vsftpd的验证配置文件名。因此,PAM验证将参考/etc/pam.d/下的vsftpd文件配置。

以下这些是关于Vsftpd虚拟用户支持的重要配置项目。默认Vsftpd.conf中不包含这些设定项目,需要自己手动添加配置。

guest_enable=YES

设定启用虚拟用户功能。

guest_username=ftp

指定虚拟用户的宿主用户。

virtual_use_local_privs=YES

设定虚拟用户的权限符合他们的宿主用户。

user_config_dir=/etc/vsftpd/vconf

设定虚拟用户个人Vsftp的配置文件存放路径。也就是说,这个被指定的目录里,将存放每个Vsftp虚拟用户个性的配置文件,一个需要注意的

地方就是这些配置文件名必须和虚拟用户名相同。

第四步、建立日志

因为默认vsftpd的日志文件不存在,需要手工建立,同时赋予权限

# touch /var/log/vsftpd.log

# chown www.www /var/log/vsftpd.log

第五步、建立虚拟用户配置文件

# mkdir /etc/vsftpd/vsftpd_user_conf

所有权限

# vim /etc/vsftpd/vsftpd_user_conf/user1

1.  write_enable=YES

2.  anonymous_enable=NO

3.  anon_world_readable_only=NO

4.  anon_upload_enable=YES

5.  anon_mkdir_write_enable=YES

6.  anon_other_write_enable=YES

7.  local_umask=022

8.  download_enable=Yes

9.  local_root=/data/user1

上传权限

# vim /etc/vsftpd/vsftpd_user_conf/user2

1.  write_enable=YES

2.  anon_world_readable_only=NO

3.  anon_upload_enable=YES

4.  anon_mkdir_write_enable=YES

5.  anon_other_write_enable=YES

6.  local_umask=022

7.  download_enable=NO

8.  local_root=/data/user2

 

只能下载

# vim /etc/vsftpd/vsftpd_user_conf/user3

1.  write_enable=NO

2.  anon_world_readable_only=NO

3.  anon_upload_enable=NO

4.  anon_mkdir_write_enable=NO

5.  anon_other_write_enable=NO

6.  local_umask=022

7.  download_enable=yes

8.  local_root=/data/user3

 

启动服务

#service vsftpd start

每个用户相同的权限时用:执行: virtual_use_local_privs=yes

不同时:

1:配置文件添加这个:user_config_dir=/etc/vsftpd

2:创建子目录;user1  user2   /home/ftpsite/

Chown ftp_virt usr1

Chown ftp_virt usr2

Vim /etc/vsftpd/urs1

输入:local_root=/home/ftpsite/usr1

Vim /etc/vsftpd/urs2

输入:local_root=/home/ftpsite/usr2

3:Service vsftpd restart

4:验证;

转载于:https://blog.51cto.com/foreverwyq/1906049

vsftpd虚拟用户整理相关推荐

  1. Linux之Vsftpd虚拟用户、扩展应用tcp_wrapper实验总结

    Linux之Vsftpd虚拟用户实验总结 一.vsftpd简介 vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux, BSD, Solaris, HP-UX ...

  2. linux搭建vsftpd虚拟用户访问

    配置vsftpd服务 FTP服务器默认匿名可以访问. 1.搭建yum仓库   [root@accp~]# vim /etc/yum.repos.d/dvd.repo   [server]   name ...

  3. centos创建vsftpd虚拟用户

    CentOS Vsftpd服务器(虚拟用户建立) 一.安装vsftpd服务相关组件 需要安装组件vsftpd pam db4 db4-utils [root@CentOS /]# yum -y ins ...

  4. linux之vsftpd虚拟用户搭建

    vsftpd虚拟用户的配置过程 系统版本:Redhat 4.0 1.安装软件包          #rpm -ivh /mnt/RedHat/RPMS/vsftpd...... 2.建立虚拟用户口令库 ...

  5. FTP服务(3)实现基于文件验证的vsftpd虚拟用户

    1.虚拟用户 所有虚拟用户会统一映射为一个指定的系统帐号: 访问共享位置,即为此系统帐号的家目录各虚拟用户可被赋予不同的访问权限,通过匿名用户的权限控制参数进行指定虚拟用户 帐号的存储方式: 文件:编 ...

  6. vsftpd虚拟用户帐号

    vsftpd虚拟用户帐号的设置步骤:   1.建立虚拟用户口令库文件   2.生成vsftpd的认证文件   3.建立虚拟用户所需的PAM配置文件   4.建立虚拟用户所要访问的目录并设置相应权限   ...

  7. linux下配置vsftpd虚拟用户为登录用户

    1.安装vsftpd 安装依赖包: yum -y install pam pam-devel db4 de4-devel db4-uitls db4-tcl 新建vsftpd系统用户: #建立Vsft ...

  8. Vsftpd 虚拟用户配置参考---终极版

    Vsftpd 虚拟用户配置文档 一.主要文件列表 虚拟用户列表 account.txt 口令库文件 /etc/vsfptd/account.db PAM认证 /etc/pam.d/vs_1 主配置文件 ...

  9. vsftpd虚拟用户

    转自 http://kindit.blog.51cto.com/2286921/1217428 使用vsftpd虚拟用户可以将权限限制在每个用户的根目录里,这样解决了匿名用户不能正对每个人进行权限控制 ...

最新文章

  1. 在Windows环境下搭建Android开发环境
  2. javascript里你绝对用的上的字符分割函数--原创
  3. java定时器异常,定时任务异常 高手进
  4. PhpYun人才系统 整合 Ucenter 之后,会员注册提示”该 Email 已经被注册!“的解决方案
  5. 投屏时,客厅电视与客厅电视DMR的区别
  6. URL重写 对于禁用cookie的 方法
  7. SQL Server 历史SQL执行记录
  8. EasyUI:Layout 布局
  9. WPF:MVVM模式下ViewModel关闭View
  10. python itchat教程_Python itchat.run方法代码示例
  11. 服务器三块硬盘missing,服务器阵列崩溃、硬盘损坏、分区表丢失、红屏,还好数据救回来了...
  12. p7510 rom android 8,三星p7510 recovery卡刷rom 刷机教程
  13. AI专家Raj Reddy建议:政府应免费发放智能手机
  14. edge函数闪退 matlab,Microsoft Edge闪退怎么办?Microsoft Edge闪退解决办法
  15. 干货!小样本分子性质预测新方法——性质感知的关系网络
  16. win10打开word时候报错,应用程序无法正常启动:0xc0000142
  17. 对于学习率与梯度下降的通俗总结:
  18. Web service 是什么 ?
  19. AnnotatedElement
  20. oracle 查看表空间及剩余表空间

热门文章

  1. 20200716:最多 K 次交换相邻数位后得到的最小整数(leetcode 1505)
  2. 20200118:(leetcode)最长回文子串(中心扩展算法详解及思考)
  3. xgboost算法_xgboost算法过程推导
  4. 单片机项目开发一般步骤
  5. VB为MSHFlexGrid添加表格编辑功能
  6. Google开源新AI模型,语音区分准确率92%创新高 | 论文+GitHub
  7. CNNIC报告:中国网民超8亿,人工智能取得突出成果
  8. socket是什么?
  9. Emgu-WPF 激光雷达研究-移动物体跟踪2
  10. 易宝典——玩转O365中的EXO服务 之四十二 导出就地电子数据展示搜索结果