首页 »Unix/FreeBsd » proftpd:FreeBSD上Proftpd带匿名登陆和使用MySQL用户验.. »正文proftpd:FreeBSD上Proftpd带匿名登陆和使用MySQL用户验..来源: 发布时间:星期二, 2008年12月9日 浏览:2次 评论:0
四、完成MySQL数据库表配置
完成proftpd.conf配置文件后,需要进行数据库表的配置,包括创建表和插入数据 1、登陆mysql或者使用phpmyadmin工具创建数据库 FTP #mysqladmin create FTP 2、运行下面的sql语句创建表和插入必要数据 -- phpMyAdmin SQL Dump -- version 2.6.4-pl2 -- http://www.phpmyadmin.net -- -- 主机: localhost -- 生成日期: 2005 年 11 月 03 日 14:23 -- 服务器版本: 4.1.14 -- PHP 版本: 4.4.0 -- -- 数据库: `FTP` -- -- -------------------------------------------------------- -- -- 表的结构 `FTPGRPS` -- CREATE TABLE `FTPGRPS` ( `groupname` text NOT NULL, `gid` smallint(6) NOT NULL default '0', `members` text NOT NULL ) ENGINE=MyISAM;; -- -- 导出表中的数据 `FTPGRPS` -- INSERT INTO `FTPGRPS` VALUES ('FTPGRP', 2001, 'FTPUSR'); INSERT INTO `FTPGRPS` VALUES ('ftpusers', 2002, 'ftp'); -- -------------------------------------------------------- -- -- 表的结构 `FTPUSERS` -- CREATE TABLE `FTPUSERS` ( `userid` text NOT NULL, `passwd` text NOT NULL, `uid` int(11) NOT NULL default '0', `gid` int(11) NOT NULL default '0', `homedir` text, `shell` text ) ENGINE=MyISAM;; -- -- 导出表中的数据 `FTPUSERS` -- INSERT INTO `FTPUSERS` VALUES ('Michael', 'testftp', 2001, 2001, '/var/ftp/incoming', ''); -- -------------------------------------------------------- -- -- 表的结构 `quotalimits` -- CREATE TABLE `quotalimits` ( `name` varchar(30) default NULL, `quota_type` enum('user','group','class','all') NOT NULL default 'user', `per_session` enum('false','true') NOT NULL default 'false', `limit_type` enum('soft','hard') NOT NULL default 'soft', `bytes_in_avail` float NOT NULL default '0', `bytes_out_avail` float NOT NULL default '0', `bytes_xfer_avail` float NOT NULL default '0', `files_in_avail` int(10) unsigned NOT NULL default '0', `files_out_avail` int(10) unsigned NOT NULL default '0', `files_xfer_avail` int(10) unsigned NOT NULL default '0' ) ENGINE=MyISAM;; -- -- 导出表中的数据 `quotalimits` -- -- 设置Michael用户,磁盘配额1G,可以上传下载流量2G,最多文件数10个 INSERT INTO `quotalimits` VALUES ('Michael', 'user', 'false', 'soft', 1.024e+09, 0, 2.048e+09, 10, 0, 0); -- -------------------------------------------------------- -- -- 表的结构 `quotatallies` -- CREATE TABLE `quotatallies` ( `name` varchar(30) NOT NULL default '', `quota_type` enum('user','group','class','all') NOT NULL default 'user', `bytes_in_used` float NOT NULL default '0', `bytes_out_used` float NOT NULL default '0', `bytes_xfer_used` float NOT NULL default '0', `files_in_used` int(10) unsigned NOT NULL default '0', `files_out_used` int(10) unsigned NOT NULL default '0', `files_xfer_used` int(10) unsigned NOT NULL default '0' ) ENGINE=MyISAM;; 如果你想设置quota,只要在ftpquotalimits表里设置一下就行了,这个表里的各个参数分别代表: 代码: quotalimits表 name: - 用户帐号 quota type: - user, group, class, all (we use user) per_session: - true or false (we use true) limit_type: - 硬限制 or 软限制 (我们一般用硬限制) bytes_in_avail: - 允许上传的字节数 bytes_out_avail: - 允许下载的字节数 bytes_xfer_avail: - 允许传输的字节数(包括上传/下载) files_in_avail: - 允许上传的文件数 files_out_avail: - 允许下载的文件数 files_xfer_avail: - 允许传输的文件数(包括上传/下载) 五、完成最后的用户、用户组和目录设置 1、创建proftpd服务运行的用户和用户组 #pw groupadd FTPGRP -g 2001 #pw adduser FTPUSR -u 2001 -g 2001 -d /var/ftp/incoming -s /sbin/nologin 2、创建匿名登陆用户映射的系统用户和用户组 #pw groupadd ftpusers -g 2002 #pw adduser ftp -u 2002 -g 2001 -d /var/ftp/incoming -s /sbin/nologin 六、运行测试配置系统服务 1、运行proftpd服务 #/usr/local/sbin/proftpd 2、测试 在任何一台可以访问服务器的机器上测试ftp连接,使用Michael用户和testftp口令登陆,然后运行quote SITE QUOTA命令查看设置的磁盘限额信息 然后测试使用anonymous匿名用户登陆测试 3、监控和调试proftpd服务 #/usr/local/sbin/proftpd proftpd -n -d 5 -c /usr/local/etc/proftpd.conf 这样在测试和连接ftp的时候,可以在主机上看到所有的proftpd运行信息 4、日志监控 可以使用下面的命令查看系统日志、传送日志等 #tail -f /var/log/proftpd.syslog #tail -f /var/log/proftpd.transferlog 5、配置系统自启动proftpd服务 #vi /etc/rc.conf 加入下面一行 proftpd_enable=”YES” 这样系统启动的时候会调用/usr/local/etc/rc.d/proftpd.sh脚本启动proftpd服务 ok 大功告成,大家可以根据自己的需要修改上面任何一个部分的细节,最好在自己理解的基础上进行修改,整个过程包括proftpd的配置都很简单。有问题欢迎大家来和我讨论,经过Michael测试使用,发现proftpd的确是个 0
相关文章
读者评论
发表评论 |