日期:2011-05-02 15:44:00 来源:本站整理
数据备份系统办理筹划[MySQL防范]
本文“数据备份系统办理筹划[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
随着计算机网络的遍及,计算机病毒有了快速传达的机会,并且对数据文件的破坏日益严重,用户需求常常对个人重要数据做异地备份.基于多用户和数据隐私的考虑,提出了个人数据备份系统办理筹划.它操纵网络存储设备具有的大容量、高坚固性、高安全性特点,为用户供应一定容量的空间来保存个人数据,同时操纵软件的权限管理很好地实现个人数据的保密性.
目前Linux下Ftp服务器软件主要有Wu-FTP和ProFTPD两种.Wu-FTP是Red Hat Linux预装软件,但安全漏洞很多.ProFTPD针对Wu-FTP的弱项而开辟,除改良了安全性外,还具有很多特点,如设置简单、能以Stand-alone情势运行等.ProFTPD已经成为继Wu-FTP之后最为风行的FTP服务器软件之一.
ProFTPD在1.2版本之前利用Linux用户账号来管理用户,即便用口令文件.该方法存在很多不足,与数据库操作相比,用户账号的增添、口令的改正及账号的删除显得非常复杂,并且文件无法支持并发读写;在Linux顶用户账号具有Telnet的权限,安全上存在隐患;口令文件只有root账号可以改正,假如利用浏览器方法改正此文件,在技术上有一定难度.
在ProFTPD 1.2.4版中增添了数据库管理用户的功效,目前只支持MySQL数据库,并且该账号只实用于FTP 服务器,不存在安全上的隐患.本文利用的开辟平台是Linux + ProFTPD + MySQL组合.
总体计划
系统后台采取FTP服务器来为用户供应管理文件功效,可以利用支持FTP 功效的各种软件来操作数据文件.办理筹划实现用户账号自动申请受理、密码改正,网络管理人员可以利用浏览器来管理账号改正空间限量、改正口令及删除账号等功效.
系统的核心是若何利用开辟语言来动态地配置ProFTPD,实现对数目众多用户的账号管理.
办理筹划具体内容
有关ProFTPD的安装和配置文件内容的资料可以详见系统文档,本文重点介绍和数据库有关的部份.
1. 安装ProFTPD
(1)安装MySQL数据库,成立MySQL的安装目录的标记,衔接到/usr/local/mysql.
(2)编译前的配置,将MySQL和空间限量模块增添到编译的选项中,代码以下:
# ./configure --with-includes = /usr/local/mysql/include --with-libraries=/usr/local/mysql/lib/mysql --with- modules=mod_sql:mod_sql_mysql:mod_quota
2. 增添用户
在MySQL中成立FTPusers数据库和users表用来保存FTP账号信息,代码以下:
CREATE TABLE users ( userid varchar(50) NOT NULL, //用户的FTP 账号名称 password varchar(50), // 用户的FTP账号密码 uid int(5) DEFAULT '0' NOT NULL, //用户主目录的 uid gid int(5) DEFAULT '65533' NOT NULL, //用户主目录的 gid homedir varchar(255), //用户主目录 count int(11) DEFAULT '0', //登陆次数 ftime timestamp(14), //最后一次登陆时间 shell varchar(255) DEFAULT ' /bin/bash', PRIMARY KEY (userid) //主关键字 ); |
在proftpd.conf中增添有关MySQL的配置,代码以下:
SQLConnectInfo ftpusers@MySQL服务器名 username password //数据库衔接 SQLDoGroupAuth off SQLAuthTypes Plaintext SQLDoAuth on SQLHomedirOnDemand on SQLUserTable users //指定利用的表名 SQLUsernameField userid //以下信息需求与users表中的字段对应 SQLPasswordField password SQLHomedirField homedir SQLLoginCountField count SQLShellField shell SQLAuthoritative off SQLLogStats on SQLMinUsergid 99 SQLMinUseruid 14 SQLLogDirs fcdir SQLDefaultgid 99 |
成立用户时需求在表中增添记录,即完成账号的增添.在用户第一次利用该账号登陆时,系统自动成立用户主目录并根据uid和gid的值来设置目录的用户和组.按照配置文件中的缺省空间限量的值生成限量文件.以下是ProFTPD.conf中设置缺省空间限量的配置:
DefaultQuota 204800000 //200MB大小 QuotaType hard |
3. 删除用户
删除用户需求完成两方面工作:一方面需求对MySQL的users表做呼应的删除;另一方面要删除用户主目录.需求注意的是,由于采取浏览器方法,开辟系统的履行用户应具有对用户主目录的写权限.用户主目录的用户和组是由users表中的uid和gid来肯定的.
4. 改正空间限量
在用户主目录成立后,系统自动生成.quota空间限量文件.该文件只能被root改正,文件的格局为"总容量 利用的容量",账号管理系统只需利用新的限量文件覆盖便可.对"利用的容量",FTP服务器每次登陆时会自动计算.若何使软件系统具有root权限,可以参看"sudoers".
5.日记记录
从安全角度考虑,日记是很重要的一部份.传统的日记都是记录到文件中,而ProFTPD供应了将日记记录到数据库中的功效.这既便利了日记的查询,又极大地提高了日记查询速度.
首先需求在MySQL数据库中成立FTP_log数据表,代码以下:
CREATE TABLE FTP_log ( id int(12) unsigned DEFAULT '0' NOT NULL auto_increment, //主关键字 filename varchar(255), //文件名 filesize int(10) unsigned, //文件大小 email varchar(20) NOT NULL, //用户的账号 ip varchar(15) NOT NULL, //用户的ip地址 action varchar(255), //用户操作的内容 ftime datetime, //操作的时间 PRIMARY KEY (id) ); |
改正ProFTPD.conf文件,将"日记记录到文件"关闭,设置以下:
TransferLog none |
增添关于日记的配置,需求把用户的上载和下载及删除操作记录到日记中,记录的内容用户可以定置.比方:
SQLLog RETR,STOR,DELE insert FTP_log "null,'%f', %b, '%u','%h','%r',now()" |
被记录的操作有以下几个:
◆RETR,文件的下载;
◆STOR,文件的上传;
◆DELE,文件的删除.
此中日记记录有以下内容:
◆%f,上载或下载的文件名称包含绝对途径;
◆%b,文件的大小,以字节为单位;
◆%u,用户利用的FTP账号;
◆%h,用户的IP地址;
◆now(),为MySQL供应系统时间函数.
完毕语
在具体理解系统关键技术后,开辟语言可以按照实际情形来挑选,并可结合电子邮件服务器,实现账号和密码的统一,便操纵户操作.有关MySQL和ProFTPD的具体配置等问题,由于篇幅有限就不一一阐述.
以上是“数据备份系统办理筹划[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
- ·上一篇文章:MySQL数据导入导出办法与工具(1)
- ·下一篇文章:MySQL索引解析和优化
- ·中查找“数据备份系统办理筹划”更多相关内容
- ·中查找“数据备份系统办理筹划”更多相关内容
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论