PUREFTPD + QUOTA + MYSQL + PHP_Manager

安装环境:HTTPD + PHP + MYSQL

OS : redhat 9.0/redhat as 3


编译安装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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值