Pureftpd是一款在多种类Unix上使用并符合GPL协议的原代码开放的软件,Pureftp和mysql联合使用是什么样的看下文。
数据库我用的是5.0.20a,不过建议使用4.0的数据库,少了很多编码的麻烦。
mysql -p //登陆mysql服务器
CREATE DATABASE pureftpd;
grant all on pureftpd.* to pureftp@localhost identified by '********';
se pureftpd
CREATE TABLE `users` (
- `id` int(32) unsigned NOT NULL auto_increment,
- `User` varchar(16) NOT NULL default '',
- `Password` varchar(64) NOT NULL default '',
- `Uid` varchar(11) NOT NULL default '-1',
- `Gid` varchar(11) NOT NULL default '-1',
- `Dir` varchar(128) NOT NULL default '',
- `QuotaSize` smallint(5) NOT NULL default '0',
- `QuotaFiles` int(11) NOT NULL default '0',
- `ULBandwidth` smallint(5) NOT NULL default '0',
- `DLBandwidth` smallint(5) NOT NULL default '0',
- `ULRatio` smallint(6) NOT NULL default '0',
- `DLRatio` smallint(6) NOT NULL default '0',
- `comment` tinytext NOT NULL,
- `ipaccess` varchar(15) NOT NULL default '*',
- `status` enum('0','1') NOT NULL default '0',
- `create_date` datetime NOT NULL default '0000-00-00 00:00:00',
- `modify_date` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`id`,`User`),
UNIQUE KEY `User` (`User`)
) TYPE=MyISAM AUTO_INCREMENT=5 ; //建立pureftpd数据库
> INSERT INTO `users` VALUES (1, 'test', encrypt('test'), '2000', '2000', '/var/ftp/test', 0, 0, 0, 0, 0, 0, '', '*', '1', '2006-11-27 10:10:00', '2006-11-27 10:10:00'); //建立ftp用户
这样我们就建立好了pureftpd数据库,下面我们修改/usr/local/pureftpd/etc/pureftpd-mysql.conf 文件.
MYSQLServer localhost
MYSQLPort 3306
MYSQLSocket /tmp/mysql.sock
MYSQLUser pureftp
MYSQLPassword ******** //这里填你自己的密码
MYSQLDatabase pureftpd
MYSQLCrypt crypt //密码加密方式,我们选crypt,还有几种方法,原理都是一样的,大家可以参考。
查找以下字符,并把前面的#号去掉
MySQLGetQTAFS
MySQLGetQTASZ
MySQLGetBandwidthUL
MySQLGetBandwidthDL
保存退出
- # vi /usr/local/pureftpd/etc/pure-ftpd.conf
就改一条
MySQLConfigFile /usr/local/pureftpd/etc/pureftpd-mysql.conf //设置mysql文件
其他按你要求自己修改。
OK,建立主目录/var/ftp/test,它要有everyone的读写权限才行,所以我用的是chmod 777 /var/ftp/test,启动后进行测试,可上传,可下载,可删除。如果不想删除和上传,可以把权限设置为555,那么就只能下载了。
【编辑推荐】