配置基于mysql的虚拟用户认证vsftp服务器

1.安装vsftp、mysql、epel_release(epel源,后面要安装的pam_mysql认证模块需要这个源)、pam_mysql

2.刚装的mysql运行一下/usr/bin/mysql_secure_installation

3.建立数据库vsftpd,建表user,

    create database vsftpd;

    use vsftpd;

    create users(id int auto_increment primary key,name char(20) binary,passwd char(41) binary);

4.插入两条测试用户数据

    insert into users(name,passwd) values(t1,password('t1'));

    insert into users(name,passwd) values(t2,password('t2'));

5.添加连接数据库的用户(vsftpd)以及密码(vsftpdp@ssword)

    grant select on vsftpd.* to 'vsftpd'@'127.0.0.1' identified by 'vsftpdp@ssword'; 

6.添加pam配置文件并修改vsftpd.conf

  在/etc/pam.d/下建立文件 vsftpd.mysql

 添加内容:

    auth required pam_mysql.so user=vsftpd passwd=cztvu host=127.0.0.1 db=vsftpd table=users usercolumn=name passwdcolumn=passwd crypt=2 

    account required pam_mysql.so user=vsftpd passwd=cztvu host=127.0.0.1 db=vsftpd table=users usercolumn=name passwdcolumn=passwd crypt=2

修改vsftpd.conf添加 

    guest_enable=yes

    guest_username=vuser (虚拟用户映射到系统的vuser本地用户,我们需要等下在后面添加一下vuser本地用户)

    user_config_dir=/etc/vsftpd/vuser_conf/ (这个目录里面可以添加对应的虚拟用户名称的配置文件,可以给不同的虚拟用户配置不同的权限)

    pam_service_name=vsftpd.mysql

7.添加vuser本地用户

    useradd -s /sbin/nologin vuser -d /var/ftproot  (这个目录/var/ftproot可以自己定,最终你可以通过配置虚拟用户的配置文件,指定虚拟用户的根目录)

8.本例虚拟用户是t1、t2所以你需要在/etc/vsftpd/vuser_conf/这个目录下建立同名的t1 t2配置文件,具体配置根据实际需求而定。

调试配置的时候要注意文件夹权限。

原创文章,作者:duiduifei,如若转载,请注明出处:http://www.178linux.com/19123

(0)
duiduifeiduiduifei
上一篇 2016-06-22 15:28
下一篇 2016-06-22 15:35

相关推荐

  • mitaka版本openstack网络之open vSwitch

    作者:【吴业亮】 博客:http://blog.csdn.net/wylfengyujiancheng 一、硬件配置及服务拓扑1. controller节点:一块网卡2. 网络节点:四块网卡。3. 计算节点:三块网卡 controller节点1. 运行 neutron数据库2. 运行消息队列服务3. 运行认证。4. 运行OpenStack计算nova相关网络…

    2018-01-22
  • Linux文件管理命令

    Linux系统上文件管理命令 一、文件查看类命令      1、cat 由第一行开始显示文件内容 语法格式: cat [选项列表] [文件列表]… 参数说明: -A, –show-all 等价于 -vET 。 -b, –number-nonblank 给非空输出行编号。 -e 等价于 -vE 。 -E…

    Linux干货 2017-07-24
  • MySQL复制

    目录: 1.备份与恢复 2.主从复制 3.主主复制 4.半同步复制 5.MHA 6.centos7搭建mariadb Galera集群 1.备份和恢复 备份工具:mysqldump+复制binlog xtrabackup (1) mysqldump+复制binlog 备份: mysqldump -E -R –triggers –master-data=2 –…

    2017-11-21
  • RAID+LVM详解

                                        一.RAID篇 一.什么是RAID   磁盘阵列全名是『Redundant Arrays…

    Linux干货 2016-09-07
  • LAMP运行环境搭建及部署php程序软件

    前言     Linux+Apache+MySQL+PHP是大多数web服务器的运行环境,能熟练配置此运行环境是每个运维的必备基本技能,本文以安装MySQL管理工具PHPmyadmin以及博客软件wordpress为例,演示编译安装LAMP运行环境的过程。 一、实验拓扑图 二、安装步骤 2.1 编译安装Apache h…

    2015-11-26
  • Homework Week-9 bash脚本之顺序、选择、循环

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash #Elephant echo "nologin users:" user1=$(cat /etc/passwd&n…

    Linux干货 2016-10-17