Gentoo安装配置pure-ftpd结合Mysql权限验证全过程

Gentoo安装配置pure-ftpd结合Mysql权限验证全过程

一、安装pure-ftpd服务端

# echo 'net-ftp/pure-ftpd mysql'>>/etc/portage/package.use

Gentoo会自动把本机的mysql装上。

# emerge pure-ftpd

配置mysql数据库root的密码,以及安装初始化目录。

我配置的root密码为root,如果设置为其它的则下面的密码也需要跟着改

# ebuild /var/db/pkg/dev-db/mysql-5.5.28/mysql-5.5.28.ebuild config

把client这个段的内容修改成如下 ,这是为了方便我们进入mysql数据库

# vim /etc/mysql/my.cnf

[client]

user            = root

password        = root

host            = 127.0.0.1

port            = 3306

socket          = /var/run/mysqld/mysqld.sock

[mysqld]

server-id                                       = 220

skip-name-resolve

# /etc/init.d/mysql start

二、在Mysql中创建相应的库和表来存储用户权限

www.bitsCN.com

# mysql –A (之前配置my.cnf里的用户和密码就是为了这儿)

mysql> CREATE DATABASE IF NOT EXISTS pureftpd;

mysql> USE pureftpd;

mysql>

CREATE TABLE IF NOT EXISTS `ftpd` (

`User` varchar(16) NOT NULL DEFAULT '' COMMENT '用户名',

`status` enum('0','1') NOT NULL DEFAULT '0' COMMENT '可用状态:0 - 不可用;1 - 正在使用',

`Password` varchar(64) NOT NULL DEFAULT '' COMMENT '密码',

`Uid` varchar(11) NOT NULL DEFAULT '-1' COMMENT '用户ID',

`Gid` varchar(11) NOT NULL DEFAULT '-1' COMMENT '组ID',

`Dir` varchar(128) NOT NULL DEFAULT '' COMMENT '拥有的权限路径',

`ULBandwidth` smallint(5) NOT NULL DEFAULT '0' COMMENT '上传带宽',

`DLBandwidth` smallint(5) NOT NULL DEFAULT '0' COMMENT '下载带宽',

`comment` tinytext NOT NULL COMMENT '备注',

`ipaccess` varchar(15) NOT NULL DEFAULT '*' COMMENT 'IP地址',

`QuotaSize` smallint(5) NOT NULL DEFAULT '0' COMMENT '大小配额',

`QuotaFiles` int(11) NOT NULL DEFAULT '0' COMMENT '文件类型配额',

PRIMARY KEY (`User`)

) ENGINE=MyISAM DEFAULT CHARSET=gbk COMMENT='ftp用户名密码表';

mysql > 添加用户ftpduser让它对pureftpd下面的库有select权限

grant select on pureftpd.* to ftpduser@'%' identified by 'ftpdpassword';

mysql > 添加一条测试数据,等会儿用来登录

INSERT INTO `ftpd` (`User`, `status`, `Password`, `Uid`, `Gid`, `Dir`, `ULBandwidth`, `DLBandwidth`, `comment`, `ipaccess`, `QuotaSize`, `QuotaFiles`) VALUES ('testuser', '1', md5('testpassword'), '1002', '81', '/var/www', 0, 0, '备注', '*', 0, 0);

三、修改配置文件,使用MYSQL进行权限验证

# vim /etc/conf.d/pure-ftpd

IS_CONFIGURED="yes"

SERVER="-S 10.36.32.220,21"

MAX_CONN="-c 50"

MAX_CONN_IP="-C 20"

AUTH="-l mysql:/etc/pureftpd-mysql.conf"

MISC_OTHER="-A -H -x -j -R -Z -E -p 50001:59999 -O clf:/var/log/pureftpd/pureftpd.log"

# mkdir –p /var/log/pureftpd/

这里的MYSQL配置与我们PHP连接MYSQL雷同,需要注意的是MYSQLCrypt 这是指的咱们对用户密码的加密方式。

# vim /etc/pureftpd-mysql.conf

MYSQLServer 127.0.0.1

MYSQLPort 3306

MYSQLUser ftpduser

MYSQLPassword ftpdpassword

MYSQLDatabase pureftpd

MYSQLCrypt md5

MYSQLGetPW SELECT Password FROM ftpd WHERE User="/L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "/R")

MYSQLGetUID SELECT Uid FROM ftpd WHERE User="/L" AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "/R")

MYSQLGetGID SELECT Gid FROM ftpd WHERE User="/L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "/R")

MYSQLGetDir SELECT Dir FROM ftpd WHERE User="/L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "/R")

MySQLGetBandwidthUL SELECT ULBandwidth FROM ftpd WHERE User="/L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "/R")

MySQLGetBandwidthDL SELECT DLBandwidth FROM ftpd WHERE User="/L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "/R")

MySQLGetQTASZ SELECT QuotaSize FROM ftpd WHERE User="/L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "/R")

MySQLGetQTAFS SELECT QuotaFiles FROM ftpd WHERE User="/L"AND status="1" AND (ipaccess = "*" OR ipaccess LIKE "/R")

四、添加nfsuser用户,并修改web目录的权限,如果没有就先创建吧

# groupadd apache; useradd nfsuser -u 1002 -g apache -d /dev/null -s /sbin/nologin

# mkdir -p /var/www

# chown -R nfsuser:apache /var/www

五、启动pureftpd并用客户端连接测试

# /etc/init.d/pure-ftpd start

时间: 2024-12-25 18:34:54

Gentoo安装配置pure-ftpd结合Mysql权限验证全过程的相关文章

安装配置Zabbix来监控MySQL的基本教程_Mysql

Zabbix的简单安装配置说明1.在已有的LAMP或者LNMP的基础上安装zabbix,安装一些依赖包: yum -y install mysql-devel libcurl-devel net-snmp-devel 2.添加用户: groupadd zabbix useradd zabbix -g zabbix 3.创建数据库,添加授权账号 create database zabbix character set utf8; grant all privileges on zabbix.* t

Ubuntu 14.04安装配置Nginx + PHP + MariaDB (MySQL)

一.安装 Nginx + MariaDB (MySQL) Ubuntu 官方源里的 Nginx 版本实在过低,所以我们先加入 ppa: sudo apt-get install python-software-properties software-properties-common sudo add-apt-repository ppa:nginx/stable sudo apt-get update 然后安装 Nginx + MariaDB sudo apt-get install ngin

CentOS 6.4中yum安装配置LAMP服务器(Apache+MySQL+PHP5)

  准备篇: 1.配置防火墙,开启80端口.3306端口    vim  /etc/sysconfig/iptables    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT   #允许80端口通过防火墙    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT   #允许3306端口通过防火墙 备注:很多网友把这两条规则添加到防火墙

Centos 下源码安装配置Nginx +PHP + fastcgi+mysql+MemCached

编译工具包是少不了的先搞起吧 yum -y install gcc gcc-c++ libxml2 libxml2-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel  zlib zlib-devel glibc glibc-devel glib2 glib2-devel ./configure: error: the HTTP rewrite module requires the P

VPS中安装配置linux+nginx+php+mysql环境详解(1/2)

vps系统CentOS5.2 添加一个常用帐号 VPS所在地 量子数据 http://www.111cn.net useradd lrenwang passwd lrenwang -------------------------------------------------------------------------------- 一 安装准备关闭防火墙 service iptables stop 关闭 SELINUX, cp 命令直接覆盖,不需要提示 sed -i "s/SELINUX

安装配置MySQLMTOP来监控MySQL运行性能的教程_Mysql

一.环境说明 1.服务器角色 2.系统环境CentOS 6.2 x86_64 3.环境要求(1).MySQL 5.0 及以上       (用来存储监控系统采集的数据) (2).Apache 2.2 及以上        (WEB 服务器运行服务器) (3).PHP 5.3 以上                (WEB 界面) (4).Python 2                       (推荐 2.7 版本,其他版本未做测试,执行数据采集和报警任务) (5).MySQLdb for p

JStorm-0.9.6.2安装配置

JStorm是由Alibaba开源的实时计算系统,它使用Java重写了Apache Storm(使用Clojure+Java混编),而且在原来的基础上做了很多改进的地方.使用Java重写,对于使用Java的开发人员来说,可以通过阅读源码来了解JStorm内部的原理和实现,而且可以根据运行错误日志来排查错误. 下面通过安装配置,以及简单使用的验证,来说明JStorm宏观上与Apache Storm的不同之处. 安装配置JStorm Server 首先,要保证JDK成功安装配置,然后在一个节点上下载

CentOS系统中安装配置Apache+PHP+MySQL环境

  首先下载软件; [root@localhost ]# wget http://apache.mirror.phpchina.com/httpd/httpd-2.2.9.tar.gz --00:47:30-- http://apache.mirror.phpchina.com/httpd/httpd-2.2.9.tar.gz Resolving apache.mirror.phpchina.com... 221.194.139.225 Connecting to apache.mirror.p

Windows 8.1下 MySQL绿色版安装配置与使用

原文:Windows 8.1下 MySQL绿色版安装配置与使用  Mysql-5.6.17-winx64操作步骤: 一.安装MySQL数据库 1.下载.      下载地址:http://downloads.mysql.com/archives/get/file/mysql-5.6.17-winx64.zip. 2.解压MySQL压缩包 解压到指定目录,D:\Dev\mysql-5.6.17-winx64. 3.添加环境变量 在Path中添加  D:\Dev\mysql-5.6.17-winx6