|
作者:babo
出处:http://www.slack.cn
转载请注明出处和作者
pureftpd简介
Pure-FTPd是一个基于Troll-FTPd的免费、安全的FTP服务器。具有很多自己的特色,例如:支持多种语言(包括中文)、对新手是个很好的选择、对于ISP和主机服务有很好的弹性、和现有的客户端与服务器完全兼容。
需要软件
服务器软件:pure-ftpd-1.0.20.tar.gz
下载地址:ftp://ftp.pureftpd.org/pure-ftpd/releases/
WEB管理软件:pureftpd_php_manager.zip
下载地址:http://www.solariz.de/download.p ... TA5MTE3NzAzNA%3D%3D
注意事项
1、要想通过Mysql进行FTP认证,系统要有mysql数据库并已经起动才可以。
2、要通过WEB来管理FTP用户,要让apache支持php和mysql才可以。
关于上面两点可以通过下面的这篇文章解决
http://www.slack.cn/modules/wordpress/index.php?p=3
安装pureftpd服务器
1、将下载的pure-ftpd-1.0.20.tar.gz解压缩。
使用下面命令
- tar zxvf pure-ftpd-1.0.20.tar.gz
复制代码
2、然后进入解压后的目录
3、配置编译
- ./configure –prefix="/usr/local/pureftpd” –with-mysql –with-paranoidmsg –with-welcomemsg –with-uploadscript –with-cookie –with-virtualchroot –with-virtualhost –with-virtualroot –with-diraliases –with-quotas –with-ratios –with-ftpwho –with-throttling –with-largefile –with-language="simplified-chinese
复制代码
4、编译安装软件
配置服务器
1、拷贝相关的配置文件
- mkdir /usr/local/pureftpd/etc/
- cp pureftpd-mysql.conf /usr/local/pureftpd/etc/
- cd configuration-file/
- cp pure-ftpd.conf /usr/local/pureftpd/etc/
- cp pure-config.pl /usr/local/pureftpd/etc/
- chmod 755 /usr/local/pureftpd/etc/pure-config.pl
复制代码
2、编辑配置文件
<1>修改/usr/local/pureftpd/etc/pure-ftpd.conf
将MySql认证开启,把下面语句修改
[cdoe]
# MySQLConfigFile /etc/pureftpd-mysql.conf
修改成如下
MySQLConfigFile /usr/local/pureftpd/etc/pureftpd-mysql.conf
[/code]
将自动创建目录开启,把下面这条语句修改
- #CreateHomeDir yes
- 修改如下
- CreateHomeDir yes
复制代码
3、修改/usr/local/pureftpd/etc/pureftpd-mysql.conf
可以将pureftpd-mysql.con文件清干净,然后添加如下内容就可以了
- # If you want to use the Socket connect methode comment out the
- # Lines with MMYSQLServer and MYSQLPort.
- # If you want to use the Port methode comment out the MYSQLSocket line
- #MYSQLSocket /var/lib/mysql/mysql.sock
- MYSQLServer localhost
- MYSQLPort 3306
- MYSQLUser xxxxxxxxxx
- MYSQLPassword xxxxxxxxxx
- MYSQLDatabase pureftpd
- MYSQLCrypt cleartext
- 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")
复制代码
其实这个文件的内容就是在解压pureftpd_php_manager.zip后,里面的pureftpd-mysql.conf.sample文件内容
4、建立数据库和表格,用mysql命令进入数据库,然后执行下面命令
- create database pureftpd;
- use pureftpd;
- DROP TABLE IF EXISTS ftpd;
- CREATE TABLE ftpd (
- User varchar(16) NOT NULL default ‘’,
- status enum(’0′,’1′) NOT NULL default ‘0′,
- Password varchar(64) NOT NULL default ‘’,
- Uid varchar(11) NOT NULL default ‘-1′,
- Gid varchar(11) NOT NULL default ‘-1′,
- Dir varchar(128) NOT NULL default ‘’,
- ULBandwidth smallint(5) NOT NULL default ‘0′,
- DLBandwidth smallint(5) NOT NULL default ‘0′,
- comment tinytext NOT NULL,
- ipaccess varchar(15) NOT NULL default ‘*’,
- QuotaSize smallint(5) NOT NULL default ‘0′,
- QuotaFiles int(11) NOT NULL default 0,
- PRIMARY KEY (User),
- UNIQUE KEY User (User)
- ) TYPE="MyISAM;
复制代码
5、修改文件权限
- chmod 4711 /usr/local/pureftpd/sbin/pure-ftpwho
复制代码
6、建立用户和组,使用如下命令
- groupadd virtualftp
- useradd virtualftp -g virtualftp
- usermod /home/ftp -d virtualftp
- chown virtualftp:virtualftp /home/ftp
复制代码
安装WEB管理
1、将下载的pureftpd_php_manager.zip移动到/var/www/htdocs,命令如下
- mkdir /var/www/htdocs/ftp
- mv pureftpd_php_manager.zip /var/www/htdocs/ftp/
复制代码
2、编辑/var/www/htdocs/ftp/pureftp.conf.php
<1>修改下面这条语句
- $PUREFTP_CONFIG_FILE = ‘/etc/pureftpd-mysql.conf’;
- 修改成下面样子
- $PUREFTP_CONFIG_FILE = ‘/usr/local/pureftpd/etc/pureftpd-mysql.conf’;
复制代码
<2>修改下面这条语句
- $FTP_WHO = “/usr/local/sbin/pure-ftpwho”;
- 修改成下面样子
- $FTP_WHO = “/usr/local/pureftpd/sbin/pure-ftpwho”;
复制代码
<3>修改下面这两条语句
- $DefaultUid = “wwwrun”; # Default User ID ( must be a real user acct )
- $DefaultGid = “wwwadm”; # Default Group ID ( must be a real group acct )
- 修改为如下内容
- $DefaultUid = “virtualftp”; # Default User ID ( must be a real user acct )
- $DefaultGid = “virtualftp”; # Default Group ID ( must be a real group acct )
复制代码
起动FTP服务器
1、用如下命令起动服务器
- /usr/local/pureftpd/etc/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf
复制代码
2、使FTP服务器随系统一起起动
只要把上面的起动命令添加到/etc/rc.d/rc.local文件中,就可以让FTP服务器随系统一起起动了
通过WEB接口添加用户
在浏览器用输入服务器的地址,例如http://192.168.0.1/ftp/index.php ... ager放到了这里)
然后将出现如下界面
点ADD USER来添加用户,如下图
添好相关信息后,点下面的save就可以了。
好了,全部配置完成。快去试试你的服务器吧!
希望大家有时间去我的小站看看
http://www.slack.cn |
|