PUREFTPD + QUOTA + MYSQL + PHP_Manager

王朝mysql·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

编译安装PURE-FTPD

# tar zvxf pure-ftpd-1.0.19.tar.gz

# cd pure-ftpd-1.0.19

# ./configure --prefix=/usr/local/pureftpd --with-paranoidmsg --with-welcomemsg --with-uploadscript --with-welcomemsg --with-mysql --with-largefile --with-cookie --with-virtualchroot --with-virtualhosts --with-virtualroot --with-diraliases --with-quotas --with-ftpwho --with-throttling --with-language=simplified-chinese

# make

# make check

# make install

配置PURE-FTPD

# cd configuration-file

# chmod u+x pure-config.pl

# cp pure-config.pl /usr/local/pureftpd/sbin

# mkdir /usr/local/pureftpd/etc

# cp pure-ftpd.conf /usr/local/pureftpd/etc

# cd ..

# cp pureftpd* /usr/local/pureftpd/etc/

# cp ./contrib/redhat.init /etc/init.d/pureftpd

# vi /etc/init.d/pureftpd

====================pureftpd=====================

#!/bin/bash

#

# Startup script for the pure-ftpd FTP Server  $Revision: 1.3  $

#

# chkconfig: 2345 85 15

# description: Pure-FTPd is an FTP server daemon based upon Troll-FTPd

# processname: pure-ftpd

# pidfile: /var/run/pure-ftpd.pid

# config: /usr/local/pureftpd/etc/pure-ftpd.conf

# Source function library.

. /etc/rc.d/init.d/functions

RETVAL=0

# Path to the pure-ftp binaries.

prog=pure-config.pl

fullpath=/usr/local/pureftpd/sbin/ $prog

pureftpwho=/usr/local/pureftpd/sbin/pure-ftpwho

start() {

echo -n  $"Starting  $prog: "

 $fullpath /usr/local/pureftpd/etc/pure-ftpd.conf

RETVAL= $?

[  $RETVAL = 0 ] && touch /var/lock/subsys/ $prog

echo

}

. . . . . . . .

. . . . . . . . . .略

====================pureftpd=====================

# chmod 755 /etc/init.d/pureftpd

# chown root:root /etc/init.d/pureftpd

# chkconfig --add pureftpd

# chkconfig pureftpd on

安装PHP_Manager

# tar -xvf ftp.tar.gz -C /var/www/html/

# vi /var/www/html/ftp/config.php

 $LANG =  $ZH_CN;

 $DBHost = “127.0.0.1”;

 $DBLogin = “ftp”;

 $DBPassword = “tmppasswd”;

 $DBDatabase = “ftpusers”;

 $FTPAddress = “127.0.0.1:21”;

PHP_Manager安全设置

# vi /etc/httpd/conf/httpd.conf

<Directory /var/www/html/ftp>

Order deny,allow

Deny from all

Allow from 192.168.0.10

</Directory>

修改数据库脚本

# vi /var/www/html/ftp/script.mysql

=====================script.mysql ===================

INSERT INTO mysql.user (Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv) VALUES('127.0.0.1','ftp',PASSWORD('tmppasswd'),'Y','Y','Y','Y','N','N','N','N','N','N','N','N','N','N');

FLUSH PRIVILEGES;

CREATE DATABASE ftpusers;

USE ftpusers;

CREATE TABLE admin (

Username varchar(35) NOT NULL default '',

Password char(32) binary NOT NULL default '',

PRIMARY KEY (Username)

) TYPE=MyISAM;

INSERT INTO admin VALUES ('Administrator',MD5('tmppasswd'));

CREATE TABLE users (

User char(16) NOT NULL default '',

Password char(32) binary NOT NULL default '',

Uid int(11) NOT NULL default '2000',

Gid int(11) NOT NULL default '2000',

Dir char(128) NOT NULL default '',

QuotaFiles int(10) NOT NULL default '1000',

QuotaSize int(10) NOT NULL default '100',

ULBandwidth int(10) NOT NULL default '80',

DLBandwidth int(10) NOT NULL default '80',

status enum('0','1') NOT NULL default '1',

ipaccess varchar(15) NOT NULL default '*',

comment tinytext NOT NULL,

PRIMARY KEY (User),

UNIQUE KEY User (User)

) TYPE=MyISAM;

=====================script.mysql ===================

创建数据库

# mysql –u root –p***** < /var/www/html/ftp/script.mysql

配置PURE-FTPD

# vi /usr/local/pureftpd/etc/pure-ftpd.conf

ChrootEveryone yes

BrokenClientsCompatibility no

MaxClientsNumber 50

Daemonize yes

MaxClientsPerIP 2

VerboseLog no

DisplayDotFiles no

AnonymousOnly no

NoAnonymous yes

SyslogFacility ftp

FortunesFile /usr/local/pureftpd/etc/welcome

DontResolve yes

MaxIdleTime 15

MySQLConfigFile /usr/local/pureftpd/etc/pureftpd-mysql.conf

AnonymousCanCreateDirs no

MaxLoad 4

PassivePortRange 55000 60000

AntiWarez yes

Umask 133:022

MinUID 2000

AllowUserFXP no

AllowAnonymousFXP no

ProhibitDotFilesWrite no

ProhibitDotFilesRead no

AutoRename no

AnonymousCantUpload no

LogPID yes

NoChmod yes

KeepAllFiles yes

CreateHomeDir yes

PIDFile /var/run/pure-ftpd.pid

MaxDiskUsage 99

CustomerProof yes

# vi /usr/local/pureftpd/etc/pureftpd-mysql.conf

MYSQLServer 127.0.0.1

MYSQLPort 3306

MYSQLSocket /var/lib/mysql/mysql.sock

MYSQLUser ftp

MYSQLPassword tmppasswd

MYSQLDatabase ftpusers

MYSQLCrypt md5

MYSQLGetPW SELECT Password FROM users WHERE User="\L"

MYSQLGetUID SELECT Uid FROM users WHERE User="\L"

MYSQLDefaultUID 2000

MYSQLGetGID SELECT Gid FROM users WHERE User="\L"

MYSQLDefaultGID 2000

MYSQLGetDir SELECT Dir FROM users WHERE User="\L"

MySQLGetQTAFS SELECT QuotaFiles FROM users WHERE User="\L"

MySQLGetQTASZ SELECT QuotaSize FROM users WHERE User="\L"

MySQLGetBandwidthUL SELECT ULBandwidth FROM users WHERE User="\L"

MySQLGetBandwidthDL SELECT DLBandwidth FROM users WHERE User="\L"

建立FTP用户和组

# groupadd -g 2000 ftpusers

# useradd -u 2001 -g ftpusers -d /dev/null -s /sbin/nologin ftp

注意:安装MYSQL时不要忘了装上mysql-devel

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航