Proftpd-1.2.7+MySQL整合经验
时间:2008-05-30 来源:剑心通明
经验之谈,大家可以参考。
首先在安装的时候。。确定mysql中mysql.hlibmysql和client.a
这两个文件的路经以我的为例:
/usr/local/mysql/include/mysql/mysql.h
/usr/local/mysql/lib/mysql/libmysqlclient.a
解压proftpd。然后找到contrib目录下的mod_sql_mysql.cp这个文件
打开==找到
改成/usr/local/mysql/include/mysql/mysql.h并保存
之后就是编译了
./configure --prefix=/usr/local/proftpd --with-modules=mod_sql:mod_sql_mysql --with-includes=/usr/local/mysql/include --with-libraries=/usr/local/mysql/lib
然后就是make 和make install安装完成。
/usr/local/proftpd/sbin/proftpd
如果没有任何提示就说明安装成功
PS:一般都会叫你改把"nogroup"改成"nobody"
然后到源代码中sample-configureations目录下找到mod_mysql.conf把它CP到proftpd/ect下成改名为proftpd.conf
修成参考“小凡”的文章
=================================
SQLConnectInfo dbname@host:port username password
为你的数据库的相应连接参数。
例子:我的proftpd的数据库账号:ftp密码:123456 端口:3306
SQLConnectInfo proftpd@localhost:3306 ftp 123456
将
SQLUserInfo users username password uid gid NULL NULL
改为
SQLUserInfo users userid passwd uid gid homedir shell
这是使用FTP帐号的表名和字段名。
在
SQLDefaultHomedir "/tmp"
的行首加上“#”注释符。
将
# SQLGroupInfo groups groupname gid members
前面的“#”注释符去掉,这是组信息。
如果不需要匿名登录,将
到
之间的内容前都加上“#”注释符。
四、建立数据库
在第三步中的dbname库中用以下命令建立相应的数据表,并建立一个帐号:
说明:这些都可以在phpMyAdmin下完成。这个也是最方便的MySQL的管理工具之一
DROP TABLE IF EXISTS `groups`;
CREATE TABLE `groups` (
`groupname` varchar(255) binary NOT NULL default '',
`gid` int(11) NOT NULL default '0',
`members` text NOT NULL,
PRIMARY KEY (`groupname`)
) TYPE=MyISAM;
INSERT INTO `groups` VALUES ('ftpgroup', 10000, 'ftpuser');
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` (
`userid` varchar(255) binary NOT NULL default '',
`passwd` varchar(255) binary NOT NULL default '',
`uid` int(11) default NULL,
`gid` int(11) default NULL,
`homedir` varchar(255) default NULL,
`shell` varchar(255) default NULL,
`count` int(11) default NULL,
PRIMARY KEY (`userid`)
) TYPE=MyISAM;
INSERT INTO `users` VALUES ('ftpuser', password('ftpuser'), 10000, 10000, '/home/ftpuser', '/bin/bash', 0);
五、启动proftpd
[root@test /root]# /usr/local/proftpd/sbin/proftpd
=============================
如果启动没有什么提示就说明成功了。
FAQ1:为什么我用localhost连不上
到网络===主机===把IP改成192.168.0.10试试看。
FAQ2:为什么连接上了。。要等很久或者Socks 什么连接失败
在FTP软件中去掉“被动模式PASV“
首先在安装的时候。。确定mysql中mysql.hlibmysql和client.a
这两个文件的路经以我的为例:
/usr/local/mysql/include/mysql/mysql.h
/usr/local/mysql/lib/mysql/libmysqlclient.a
解压proftpd。然后找到contrib目录下的mod_sql_mysql.cp这个文件
打开==找到
改成/usr/local/mysql/include/mysql/mysql.h并保存
之后就是编译了
./configure --prefix=/usr/local/proftpd --with-modules=mod_sql:mod_sql_mysql --with-includes=/usr/local/mysql/include --with-libraries=/usr/local/mysql/lib
然后就是make 和make install安装完成。
/usr/local/proftpd/sbin/proftpd
如果没有任何提示就说明安装成功
PS:一般都会叫你改把"nogroup"改成"nobody"
然后到源代码中sample-configureations目录下找到mod_mysql.conf把它CP到proftpd/ect下成改名为proftpd.conf
修成参考“小凡”的文章
=================================
SQLConnectInfo dbname@host:port username password
为你的数据库的相应连接参数。
例子:我的proftpd的数据库账号:ftp密码:123456 端口:3306
SQLConnectInfo proftpd@localhost:3306 ftp 123456
将
SQLUserInfo users username password uid gid NULL NULL
改为
SQLUserInfo users userid passwd uid gid homedir shell
这是使用FTP帐号的表名和字段名。
在
SQLDefaultHomedir "/tmp"
的行首加上“#”注释符。
将
# SQLGroupInfo groups groupname gid members
前面的“#”注释符去掉,这是组信息。
如果不需要匿名登录,将
到
之间的内容前都加上“#”注释符。
四、建立数据库
在第三步中的dbname库中用以下命令建立相应的数据表,并建立一个帐号:
说明:这些都可以在phpMyAdmin下完成。这个也是最方便的MySQL的管理工具之一
DROP TABLE IF EXISTS `groups`;
CREATE TABLE `groups` (
`groupname` varchar(255) binary NOT NULL default '',
`gid` int(11) NOT NULL default '0',
`members` text NOT NULL,
PRIMARY KEY (`groupname`)
) TYPE=MyISAM;
INSERT INTO `groups` VALUES ('ftpgroup', 10000, 'ftpuser');
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` (
`userid` varchar(255) binary NOT NULL default '',
`passwd` varchar(255) binary NOT NULL default '',
`uid` int(11) default NULL,
`gid` int(11) default NULL,
`homedir` varchar(255) default NULL,
`shell` varchar(255) default NULL,
`count` int(11) default NULL,
PRIMARY KEY (`userid`)
) TYPE=MyISAM;
INSERT INTO `users` VALUES ('ftpuser', password('ftpuser'), 10000, 10000, '/home/ftpuser', '/bin/bash', 0);
五、启动proftpd
[root@test /root]# /usr/local/proftpd/sbin/proftpd
=============================
如果启动没有什么提示就说明成功了。
FAQ1:为什么我用localhost连不上
到网络===主机===把IP改成192.168.0.10试试看。
FAQ2:为什么连接上了。。要等很久或者Socks 什么连接失败
在FTP软件中去掉“被动模式PASV“
相关阅读 更多 +