1,安装pure-ftpd-mysql mysql-server
2.配置
sudo groupadd -g 2001 ftpgroup
sudo useradd -u 2001 -s /bin/false -d /dev/null -c "Pure-FTPd User" -g ftpgroup ftpuser
sudo sh -c "echo 'yes' > /etc/pure-ftpd/conf/ChrootEveryone"
sudo sh -c "echo 'NO' > /etc/pure-ftpd/conf/CreateHomeDir"
3.mysql
mysql -u root -p
输入root账号密码
CREATE DATABASE ftpusers;
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON ftpusers.* TO 'ftpadm in'@'localhost' IDENTIFIED BY 'ftpadminPassword';
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON ftpusers.* TO 'ftpadm in'@'localhost.localdomain' IDENTIFIED BY 'ftpadminPassword';
FLUSH PRIVILEGES;
CREATE TABLE IF NOT EXISTS users(
'User' char(16) NOT NULL default '',
'Password' varchar(32) NOT NULL default '',
'Uid' int(11) NOT NULL,
'Gid' int(11) NOT NULL,
'Dir' varchar(128) NOT NULL default '',
'QuotaFiles' int(10) NOT NULL default '500',
'QuotaSize' int(10) NOT NULL default '30',
'ULBandwidth' int(10) NOT NULL default '80',
'DLBandwidth' int(10) NOT NULL default '80',
'Ipaddress' varchar(15) NOT NULL default '*',
'Comment' tinytext,
'Status' enum('0','1') NOT NULL default '1',
'ULRatio' smallint(5) NOT NULL default '1',
'DLRatio' smallint(5) NOT NULL default '1',
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
quit
4.配置mysql.conf
sudo mv /etc/pure-ftpd/db/mysql.conf /etc/pure-ftpd/db/mysql.conf_orig
sudo vi /etc/pure-ftpd/db/mysql.conf
MYSQLServer 127.0.0.1
MYSQLSocket /var/run/mysqld/mysqld.sock
MYSQLUser ftpadmin
MYSQLPassword ftpadminPassword
MYSQLDatabase ftpusers
MYSQLCrypt md5
MYSQLGetPW SELECT Password FROM users WHERE User="\L"AND Status="1" AND (Ipaddress = "*" OR Ipaddress LIKE "\R")
MYSQLGetUID SELECT Uid FROM users WHERE User="\L" AND Status="1" AND (Ipaddress="*" OR Ipaddress LIKE "\R")
MYSQLGetDir SELECT Dir FROM users WHERE User="\L" AND Status="1" AND (Ipaddress="*" OR Ipaddress LIKE "\R")
MYSQLGetQTAFS SELECT QuotaFiles FROM users WHERE User="\L" AND Status="1" AND (Ipaddress="*" OR Ipaddress LIKE "\R")
MYSQLGetQTASZ SELECT QuotaSize FROM users WHERE User="\L" AND Status="1" AND (Ipaddress="*" OR Ipaddress LIKE "\R")
MYSQLGetRatioUL SELECT ULRatio FROM users WHERE User="\L" AND Status="1" AND (Ipaddress="*" OR Ipaddress LIKE "\R")
MYSQLGetRatioDL SELECT DLRatio FROM users WHERE User="\L" AND Status="1" AND (Ipaddress="*" OR Ipaddress LIKE "\R")
MYSQLGetBandwidthUL SELECT ULBandwidth FROM users WHERE User="\L" AND Status="1" AND (Ipaddress="*" OR Ipaddress LIKE "\R")
MYSQLGetBandwidthDL SELECT DLBandwidth FROM users WHERE User="\L" AND Status="1" AND (Ipaddress="*" OR Ipaddress LIKE "\R")
wq!
5.sudo chmod g=o= /etc/pure-ftpd/db/mysql.conf
sudo /etc/init.d/pure-ftpd-mysql restart