|
楼主 |
发表于 2003-11-20 17:13:00
|
显示全部楼层
我用的是采用mysql 配置文件如下:
==========================================
##############################################
# #
# Sample Pure-FTPd Mysql configuration file. #
# See README.MySQL for explanations. #
# #
##############################################
# Optional : MySQL server name or IP. Don't define this for unix sockets.
MYSQLServer localhost
# Optional : MySQL port. Don't define this if a local unix socket is used.
MYSQLPort 3306
# Optional : define the location of mysql.sock if the server runs on this host.
MYSQLSocket /tmp/mysql.sock
# Mandatory : user to bind the server as.
MYSQLUser root
# Mandatory : user password. You must have a password.
MYSQLPassword xxxxxx
# Mandatory : database to open.
MYSQLDatabase test
# Mandatory : how passwords are stored
# Valid values are : "cleartext", "crypt", "md5" and "password"
# ("password" = MySQL password() function)
# You can also use "any" to try "crypt", "md5" *and* "password"
MYSQLCrypt cleartext any
# In the following directives, parts of the strings are replaced at
# run-time before performing queries :
#
# \L is replaced by the login of the user trying to authenticate.
# \I is replaced by the IP address the user connected to.
# \P is replaced by the port number the user connected to.
# \R is replaced by the IP address the user connected from.
# \D is replaced by the remote IP address, as a long decimal number.
#
# Very complex queries can be performed using these substitution strings,
# especially for virtual hosting.
# Query to execute in order to fetch the password
MYSQLGetPW SELECT passwd FROM users WHERE userid="\L" AND checked=1
# Query to execute in order to fetch the system user name or uid
MYSQLGetUID SELECT uid FROM users WHERE userid="\L" AND checked=1
# Query to execute in order to fetch the system user group or gid
MYSQLGetGID SELECT gid FROM users WHERE userid="\L" AND checked=1
# Query to execute in order to fetch the home directory
MYSQLGetDir SELECT homedir FROM users WHERE userid="\L" AND checked=1
# Optional : query to get the maximal number of files
# Pure-FTPd must have been compiled with virtual quotas support.
# MySQLGetQTAFS SELECT QuotaFiles FROM users WHERE User="\L"
MySQLGetQTAFS UPDATE users SET upload=1 WHERE userid="\L" AND checked=1
# Optional : query to get the maximal disk usage (virtual quotas)
# The number should be in Megabytes.
# Pure-FTPd must have been compiled with virtual quotas support.
MySQLGetQTASZ SELECT quota FROM users WHERE userid="\L" AND checked=1
# Optional : ratios. The server has to be compiled with ratio support.
# MySQLGetRatioUL SELECT ULRatio FROM users WHERE User="\L"
# MySQLGetRatioDL SELECT DLRatio FROM users WHERE User="\L"
MySQLGetRatioUL Update users set count=count+1 where userid="\L"
MySQLGetRatioDL INSERT into upload(userid,ip) values("\L","\R")
# Optional : bandwidth throttling.
# The server has to be compiled with throttling support.
# Values are in Kb/s .
MySQLGetBandwidthUL SELECT ULBandwidth FROM users WHERE userid="\L"
MySQLGetBandwidthDL SELECT DLBandwidth FROM users WHERE userd="\L"
# If you upgraded your tables to transactionnal tables (Gemini,
# BerkeleyDB, Innobase...), you can enable SQL transactions to
# avoid races. Leave this commented if you are using the
# traditionnal MyIsam databases or old (< 3.23.x) MySQL versions.
# MySQLTransactions On
================================================
启动命令如下:
========================
/usr/sbin/pure-ftpd-mysql -c 100 -k 98 -L 1000:5 -y 4:3 -j -I 5 -R -l mysql:/etc/pure-ftpd/db/pureftpd-mysql.conf -O clf:/var/log/pure-ftpd/transfer.log &
============================
因为我发现有部分用户的密码被人知道了,可能是因为被FTP密码软件破解软件破解的,因为可以一直重试,不像Serv-U可以做到1分钟重试10次就禁止连接30分钟! |
|