ORF反垃圾邮件系统

邮件服务器-邮件系统-邮件技术论坛(BBS)

 找回密码
 会员注册
查看: 54287|回复: 48
打印 上一主题 下一主题

[原创] 倾情向大家奉献,我自己做的MD邮件备份软件。

[复制链接]
跳转到指定楼层
顶楼
发表于 2006-11-10 02:37:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
写在前面
这个东西搞了很久,俺不是程序员。水平底。只做稳定点的备份软件。目前使用的这种方案。使用了国产软件WINWEBMAIL的组件。它本身就是一款邮件服务器,内置了丰富的COM+接口。最终做成的这套尚算稳定的软件不仅简单,可以说是简陋。它或者根本不能称作软件了,只能说是个工具。你也可以根据自己的需要修改它。但是请不要把这个说明文件删掉。这样当有朋友遇到问题时,大家也可以互相交流。有一个收费的MD备份软件叫 Archive Server For MDaemon。功能界面当然比我强多了。但基本备份原理是一样的。我这个就叫做 MDaemon Archive Tools For Free 吧。
软件流程:
设置MD的存档设置后,所有出入站的邮件都会放置在一个用户目录下。我们使用一个运行在服务器端的程序定期的检查这个目录。当这个目录里的邮件超过一百封时,就把它重命名剪切到WINWEBMAIL管理员的用户目录下,之所以要一百封,是因为这样会尽量少的占用系统资源。每次备份最多不超过10秒钟,即使系统因为复制文件有些慢。也是可以接受的,重命名是因为WINWEBMAIL的系统对邮件名有它自己的一套方案。这两套邮件系统的邮件源文件都是遵循标准的格式,只是后缀名不同。所以只要文件名符合WINWEBMAIL的标准。就可以在WINWEBMAIL的编程接口里访问了。剪切过去后。程序会按你设置的备份间隔定期的用XMLHTTP调用一个网页,间隔的时间建议为5分钟。该网页利用WINWEBMAIL的组件遍历管理员目录下所有的邮件,得到发件人,收件人,抄送,主题,发送时间,正文,是否有附件等这些信息。再根据用户事先的定义来判断这些邮件是否符合备份的条件,如条件符合,则将这些信息存入数据库。再把些文件移动到存档目录里。如不符合,就直接删除文件。当用户在查找页面里根据上述条件找到对应的邮件时,可以在线查看邮件内容。(不能查看附件)也可以选择把此邮件复制一份到某个MD用户的目录下。这样该用户就可以用客户端下载了。邮件的信息将保持不变。
安装方法:
1.准备工作。以我的安装情况,是有两台机。一台是已有的邮件服务器A,且负责运行邮件备份程序和检索还原的网站。另一台是备份机B。负责存储数据库和邮件文档。首先你需要确定你的情况。再根据你的情况做出一些准备工作。重要的是邮件存储空间的准备。按一般的经验看。有200个用户的服务器一般月邮件量在一般不超过四万封。约14GB(未压缩)。所以如果你要存储一年的邮件。加上数据库。至少也要准备200GB的空间。
当这些准备好后。请先在备份机上安装MS SQL 2005 SERVER,之所以要2005,其实2000也可以,不过2005的性能 更好一些。然后新建一个名为ArchiveMail的数据库。然后打开查询分析器。登陆后打开本目录下的create.sql脚本。并选择执行以创建数据表。然后在A机的ODBC数据源里创建一个文件DSN。可以访问B机的SQL,文件名为archivemail.dsn (注意你的连接方式最好是用一个专用的登陆,SA也可以。然后检查ODBC目录下的这个文件。用记事本打开,在UID下面加一行pwd=……你的密码。不然默认连接向导是不会为你存储密码的。)
然后在B机上创建一个共享目录。注意设置A机上的某用户的访问权限为完全访问。注意,不要映射网络驱动器。然后把本目录下的web文件夹复制到这个共享目录下。请把A机访问B机这个共享目录的地址记录下来备用。如:\\192.168.1.100\archive\  后面的archive是你的共享名。这个名字是随意的。
2.完成上述动作后。请在A机的MD上设置存档,把所有的用户邮件放置到某个用户的目录下。用户名可以是backup,或是archive。记得不要限制这个邮箱空间,以免邮箱满了无法存档。设置完成后将A机上的MD服务停掉,然后先安装jmail4.3。这个是用来发通知邮件给管理员的。安装完成后请安装winwebmail 3.7,可以在www.winwebmail.com上下载。安装目录最好选择和刚才设置的MD邮件备份用户邮箱相同的分区。因为同分区移动文件的速度很快。
安装完后运行开始菜单里的主程序,然后点击在系统栏的图标,在菜单上选择系统设置,然后在弹出的窗口中选择端口,把SMTP和POP3的勾去掉。这样它就不会和MD发生冲突了。然后在用户管理的地方把默认用户admin的邮件空间设置得大一些。可以设置成2GB。再为这个唯一的用户设置一个结实的密码。虽然我们不会用到这个密码。再是服务器上多了一个服务。总是要注意安全的吧。接着把事件查看菜单中的自动删除日志的功能启用,时间为一天。这是为了不必要的浪费空间。最后把安装目录下的web子目录的内容全部删除。当然,如果你不想删除也可以剪切到其它地方以备以后研究。
接着请在A机上安装IIS。默认网站的端口号为6681切记,把脚本超时的时间尽量设置得大一点。再把启用父目录的勾打上。然后在默认网站下创建一个虚拟目录。目录名为archive。目标为\\192.168.1.100\archive\web\  即你是共享目录下的那个网站。访问用户那里请选择你刚才你设置的有权限访问此目录的用户。并填好密码。注意后面的地方要选择可以运行脚本,并有写入权限。最好是为这目录建立一个程序池。这样就快一些。为了安全的考虑建议只在内部使用这个网站。对外不要开放这个6681的端口,因为一般性的维护在内部做都足够了。
3.配置web目录下的conn.asp。确认FILE DSN是你配置的那一个。启动MD服务,在A机上运行archive.exe 如果一切准备都正常程序将正常打开。否则请检查前面准备工作。在界面上请输入按提示要求的内容。注意如果是目录类的参数。请务必在后面以\结束。
设置IIS来宾帐户的访问权限,确认它可以访问MD用户邮件目录,以及winwebmail安装目录下的mail目录。访问权限是完全。
4.确认web目录下的check.asp这个文件的路径为 http://localhost:6681/archive/check.asp
点开始备份程序开始运行,状态处显示为下次检查备份时间的倒计时秒数。
查找还原的功能可以在http://localhost:6681/archive/index.asp后看到。

备份部分基本完成。查找网站还有少许欠缺。主要考虑到是数据库的结构还未到十分完美的地步。如果频繁更改结构。很多工作都要白做。待运行一段时间后看用户反应再完善网站功能。

作者:大碗豆浆  QQ:9949363 E-mail:david_lgg@163.com

[ 本帖最后由 大碗豆浆 于 2006-11-18 20:21 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?会员注册

x
沙发
 楼主| 发表于 2006-11-10 06:47:11 | 只看该作者

希望看贴的朋友能回贴,不枉我这一个月来为这个天天搞到两三点。哈哈

藤椅
发表于 2006-11-10 08:18:01 | 只看该作者
帮你顶一下,不过冒昧问一个问题,把邮件备份到数据库的优势是什么?便于检索?速度快?
如果这样,不如备份到微软的PST文件,是不是可以达到同样的效果?。
板凳
 楼主| 发表于 2006-11-10 08:34:29 | 只看该作者

回复 #3 dennishan 的帖子

如果你有300个员工,你是打算每天帮他们备份一次PST吗。这里面要有多少重复的邮件。得有多少空间才能够存。要多少技术员去做。要耽误多少人工作。如果人家恶意的删除邮件,或是在PST上加密码。你又得花多少时间去恢复。

如果要查关于一个关健字在所有员工邮件里出现的情况。你打算怎么查?用OUTLOOK分别打开PST查?如果某员工接手另一员工的工作。你可以很方便的为他复制PST文件,但是有一个20人的团队要接手另一个团队的项目。你还打算把这个原团队这一年里备份过的所有PST都拷给他们吗?

用数据库。你只要一个命令。这些邮件就会显示。或是很方便的转到某用户的邮箱下面了。
报纸
发表于 2006-11-10 08:48:38 | 只看该作者

re

感谢楼主提供,辛苦了,我先消化一下,不过我也就2百多帐户,估计用不着这个,不过值得研究一下。
地板
 楼主| 发表于 2006-11-10 09:30:20 | 只看该作者

回复 #5 wxhsh 的帖子

两百个用户也不算少了.主要还是要看邮件量.如果一个月邮件量有3-4万封.一年有几十万封.这两三年下来的邮件.要查或是恢复某个用户的邮件没有数据库的话还真不是件容易的事.

早上又想了一下3楼的问题.可能三楼是用OUTLOOK或是什么工具把存档目录里的邮件下载到本地.存到PST里.如果邮件量不大.我想这个方法倒是挺好的.但是邮件量大的话就难说了.PST文件由于自身的问题当文件一大时性能就明显下降.给我感觉超过4GB的PST就下降得很厉害了.我试验过P4 3G 1GB内存的主机最多能打开20个这样的文件.要查找或是恢复某个用户的邮件.就更耗时了.一旦OUTLOOK意外关掉,重新打开时等待你的将是漫长的PST扫描恢复.

另外在管理上还有一个微妙的原因.当涉及到商业泄秘调查的时候,邮件是首当其冲的.不可否认,你可能很了解你的老板,并且他很信任你.但是出于效率,他可能宁愿有个便捷的方式自己去查这些内容.很可能的情况是.他不想让你知道他要调查的对象和内容.所以.有这样一个界面就更重要了.说这么多.其实都是来自于生活中的经验.其实我更愿意和大家请教技术的东西而不想提这些破事.
7
发表于 2006-11-10 09:58:01 | 只看该作者
感謝分享。
8
发表于 2006-11-10 10:41:24 | 只看该作者
该死的,终于过了一个小时了
支持下豆浆的劳动成果
9
发表于 2006-11-10 11:02:42 | 只看该作者
辛苦,,,,最好还是找个Archive Server For MDaemon的序号
10
 楼主| 发表于 2006-11-10 11:14:52 | 只看该作者

回复 #9 U-Mail 的帖子

难找.
您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

小黑屋|手机版|Archiver|邮件技术资讯网

GMT+8, 2026-7-28 16:13

Powered by Discuz! X3.2

© 2001-2016 Comsenz Inc.

本论坛为非盈利中立机构,所有言论属发表者个人意见,不代表本论坛立场。内容所涉及版权和法律相关事宜请参考各自所有者的条款。
如认定侵犯了您权利,请联系我们。本论坛原创内容请联系后再行转载并务必保留我站信息。此声明修改不另行通知,保留最终解释权。
*本论坛会员专属QQ群:邮件技术资讯网会员QQ群
*本论坛会员备用QQ群:邮件技术资讯网备用群

快速回复 返回顶部 返回列表