PUREFTPD + QUOTA + MYSQL + PHP_Manager

发布于 2022-10-02 05:01:34 字数 6927 浏览 27 评论 0

安装环境: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(12 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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

听风吹 2022-10-09 05:01:34

登陆窗口:

没有你我更好 2022-10-09 05:01:34

管理窗口:

浴红衣 2022-10-09 05:01:34

到那可以下载到php_manager,我的是pureftpd_php_manager,和你的配置文件不一样啊?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文