mysql(指RDS)验证pureftpd登录
1、下载 pure-ftpd-1.0.47.tar.gz
官网下载 ftp://ftp.pureftpd.org/pub/pure-ftpd/releases/
tar zxvf pure-ftpd-1.0.47.tar.gz cd pure-ftpd-1.0.47 ./configure --prefix=/usr/local/pureftpd --with-cookie --with-throttling --with-ratios --with-quotas --with-sysquotas --with-uploadscript --with-virtualhosts --with-virtualchroot --with-virtualchroot --with-diraliases --with-peruserlimits --with-language=simplified-chinese --with-mysql --with-paranoidmsg --with-altlog --with-rfc2640 make && make install
2、修改配置文件/usr/local/pureftpd/etc/pure-ftpd.conf
ChrootEveryone yes BrokenClientsCompatibility no MaxClientsNumber 50 Daemonize yes MaxClientsPerIP 8 VerboseLog no DisplayDotFiles yes AnonymousOnly no NoAnonymous yes SyslogFacility ftp DontResolve yes MaxIdleTime 15 MySQLConfigFile /usr/local/pureftpd/etc/pureftpd-mysql.conf LimitRecursion 10000 8 AnonymousCanCreateDirs no MaxLoad 4 AntiWarez yes Bind ,2121 Umask 133:022 MinUID 100 AllowUserFXP no AllowAnonymousFXP no ProhibitDotFilesWrite no ProhibitDotFilesRead no AutoRename no AnonymousCantUpload yes CreateHomeDir no PIDFile /var/run/pure-ftpd.pid MaxDiskUsage 99 CustomerProof yes ClientCharset gb2312
3、修改配置文件pureftpd-mysql.conf (从源文件pure-ftpd-1.0.47中拷贝)
MYSQLServer xxx.mysql.rds.aliyuncs.com MYSQLPort 3306 MYSQLUser xxx MYSQLPassword xxx MYSQLDatabase xxx MYSQLCrypt cleartext 选择明文用cleartext、加密使用crypt MYSQLGetPW SELECT Password FROM pureftpuser WHERE User='\L' MYSQLGetUID SELECT Uid FROM pureftpuser WHERE User='\L' MYSQLGetGID SELECT Gid FROM pureftpuser WHERE User='\L' MYSQLGetDir SELECT Dir FROM pureftpuser WHERE User='\L' MySQLGetQTAFS SELECT QuotaFiles FROM pureftpuser WHERE User='\L' MySQLGetQTASZ SELECT QuotaSize FROM pureftpuser WHERE User='\L' MySQLGetBandwidthUL SELECT ULBandwidth FROM pureftpuser WHERE User='\L' MySQLGetBandwidthDL SELECT DLBandwidth FROM pureftpuser WHERE User='\L'
4、RDS中创建表
CREATE TABLE `pureftpuser` ( `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 ;
5、添加系统用户
groupadd download -g 1000 useradd download -u 1000 -g download -s /sbin/nologin groupadd upload -g 1001 useradd upload -u 1001 -g upload -s /sbin/nologin mkdir /pub chown -R upload /pub chgrp -R download /pub chmod 750 /pub
6、插入数据
INSERT INTO `pureftpuser` VALUES (1, 'download','download', '1000', '1000', '/pub', 0, 0, 0, 0, 0, 0, '','*', '1', '2017-12-07 16:33:00', '2017-12-07 16:34:00'); INSERT INTO `pureftpuser` VALUES (1, 'upload','upload', '1001', '1001', '/pub', 0, 0, 0, 0, 0, 0, '','*', '1', '2017-12-07 16:33:00', '2017-12-07 16:34:00');
7、启动服务,验证
/usr/local/pureftpd/sbin/pure-ftpd /usr/local/pureftpd/etc/pure-ftpd.conf