一、安装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中创建相应的库和表来存储用户权限
# 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
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
相关推荐
Gentoo Linux文档 -- Gentoo Linux x86手册
本文详细讲述gentoo桌面环境gnome-light的安装过程,如何配置主机网络,如何让gentoo支持中文,如何挂载windows下的NTFS文件系统,如何使gentoo支持声音 的输入输出,让你的emerge极大地加快下载速度,并安装音视频...
gentoo-portage-rsync-mirror, Gentoo库的镜像镜像,使用 https 以前的Gentoo rsync-to-git镜像用于包含打包到git存储库中的Gentoo树的存储库。 然而,在 2015-08-09,Gentoo正式切换到了 git,这使得。新资源:cgit...
- **网络配置的重要性**:网络配置是 Gentoo 安装过程中非常关键的一步,因为它允许用户访问互联网以下载必需的文件和更新。 #### 四、准备磁盘 - **磁盘分区**:为了安装 Gentoo,需要创建所需的分区。这部分内容...
这个名为"gentoo安装文档.doc.rar"的压缩包文件包含了一份详细的Gentoo安装指南,旨在帮助用户,尤其是新手,顺利地完成Gentoo系统的安装过程。以下是Gentoo安装过程中的一些关键知识点: 1. **认识Gentoo**: ...
Gentoo 的安装过程相对复杂,但提供了极大的灵活性和性能优化的可能性。 首先,了解一些基本概念。源码编译是 Gentoo 的核心特点之一,意味着用户需要从源代码构建操作系统的所有软件。这种方式允许用户根据硬件...
《Gentoo安装手册》是针对Gentoo Linux操作系统的一份详尽指南,旨在帮助用户完成从下载到安装,再到配置的全过程。这份手册由Gentoo官方提供,经过整理,适合打印以便线下查阅。 在Gentoo Handbook中,首先介绍了...
4. **数据库设置**:Courier-IMAP可能需要MySQL或SQLite支持,确保相关库已安装并正确配置。 5. **启动与启用服务**:`rc-service courier-imap start`启动服务,`rc-update add courier-imap default`使其开机启动...
本节将详细介绍如何通过 gentoo-mini 和 stage3 光盘来安装 Gentoo Linux。 ##### 1.2 选择合适的安装方式 - **gentoo-mini**:这是一个极简的安装介质,通常用于网络连接良好的环境中,因为它需要下载额外的组件...
在安装Gentoo Linux的过程中,你需要遵循以下步骤: 1. **选择安装方式**:Gentoo提供了多种安装方法,通常推荐使用最小安装光盘开始。 2. **配置网络**:安装前,确保网络设置正确,以便下载最新源代码。 3. **...
### GenToo虚拟机安装知识点详解 #### 一、GenToo简介与应用场景 - **GenToo Linux**:一种高度可定制的Linux发行版,以其灵活性和强大的包管理系统**Portage**而闻名。 - **应用场景**:适合对Linux系统有深入了解...
### Gentoo 下安装与配置Nginx+ MySQL + PHP (fastcgi) 环境步骤详解 #### 一、概述 在 Gentoo Linux 操作系统上构建一个完整的 Web 开发环境,通常涉及到 Nginx(作为 Web 服务器)、MySQL(数据库管理系统)以及 ...
修补程序文件,用于在Linux内核4.0.4上构建Gentoo的vmware-modules-279.3软件包。 使程序包编译无误,并允许vmware-player运行。 使用风险自负。 指示: 手动克隆存储库或单独下载文件。 在终端中,将补丁文件放在...
- **安装过程复杂**:与大多数Linux发行版相比,Gentoo的安装过程较为复杂,需要手动配置许多细节。 - **初始配置**:在安装完成后,用户还需要进行大量的配置工作,包括设置内核参数、安装必要的软件包、配置网络...
标题提到的“PyPI官网下载 | binary_gentoo-5.0.0-py3-none-any.whl”正是来源于PyPI的一个特定软件包。这个包名为“binary_gentoo”,版本号为5.0.0,是针对Python 3编译的,其格式为.whl,这是一种预编译的Python...
通过以上步骤,我们不仅了解了 Gentoo Linux 的基本安装流程,还掌握了如何准备启动环境、检查硬件配置、配置网络连接、创建和挂载分区以及设置系统时间等关键操作。这些步骤是成功安装 Gentoo Linux 的基础,对于...
安装Gentoo Linux可能对于初学者来说较为复杂,但一旦熟悉了其Portage包管理系统和配置过程,用户将能够深度理解和掌控系统的每一个细节。以下是一个详细的Gentoo Linux安装教程概览。 1. **准备工作** - **硬件...
以上是关于Gentoo Linux安装过程中的关键知识点,希望能帮助到想要深入了解Gentoo Linux的用户。需要注意的是,Gentoo Linux的安装相对复杂,对于初学者来说可能较为困难,因此建议具备一定Linux基础知识后再尝试...