配置基于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

相关推荐

  • 关于linux的小小心得

    1、命令行历史  history(history显示当前终端的历史记录)    (1) 保存你输入的命令历史。 可以用它来重复执行命令    (2) 登录shell时, 会读取命令历史文件中记录下的命令 ~/.bash_history    (3)登录进shell后新执行的命令只…

    Linux干货 2017-07-15
  • 马哥教育网络班22期中秋节课程练习1

    #!/bin/sh   set -e CheckRoot() { #check if currect use is root user     CUR_USER=`whoami`     if&nbs…

    Linux干货 2016-10-09
  • 用户、组的创建和管理

    用户的创建 useradd usermod userdel useradd:创建用户 create a new user or update default new user information     useradd [options]… LOGIN     &…

    Linux干货 2016-08-03
  • 【招聘福利】上海/北京/深圳丨 云络科技丨招募linux系统运维工程师

    岗位要求: 1,安装服务器 – Linux CentOS + netinstall 2.服务器安全 – 用户、权限、iptables、sudo 3.计划部署Linux?高可用性,包括HA,LB 4.协助Leader完成复杂的网络设计 (完全冗余/故障迁移/高可用性) 5.用linux命令查看服务器(top/iostat/vmstat/sar/等) 6.安装、…

    Linux干货 2016-04-05
  • 第六周

    请详细总结vim编辑器的使用并完成以下练习题 基本模式: 编辑模式,命令模式 输入模式 末行模式 内置的命令行接口 打开文件: # vim [options] [file ..] +#:打开文档后,直接让光标处于第#行的行首 +/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配到的行的行首   模式转换: 编辑模式:默认模式 编…

    Linux干货 2017-05-13
  • 网络实验

    一、子网划分 1、某公司申请到一个C 类IP 地址,但要连接6 个的子公司,最大的一个子公司有26 台计算机,每个子公司在一个网段中,则子网掩码应设为? 使用27位子网掩码一共可以分出8个子网 每段32个地址;每个子网有30个可用地址 0-31 32-63 64-95 96-127 128-159 160-191 192-223 224-255 2、一家集团…

    Linux干货 2016-09-09