收藏 分销(赏)

利用WebEasyMail创建企业内部邮件服务器.doc

上传人:二*** 文档编号:4763106 上传时间:2024-10-12 格式:DOC 页数:18 大小:234KB 下载积分:5 金币
下载 相关 举报
利用WebEasyMail创建企业内部邮件服务器.doc_第1页
第1页 / 共18页
本文档共18页,全文阅读请下载到手机保存,查看更方便
资源描述
利用WebEasyMail创建企业内部邮件服务器 作者:安徽新华学院成教院 许本新 WebEasyMail是一个基于Windows平台,并服务于中、小型网站及企业的internet(英特网)和intranet(企业局域网)Web邮件服务器。除具有EasyMail的所有功能外,还提供完整的Web接口,支持Web管理和直接使用浏览器收、发电子邮件,提供九个对象近百种方法及属性,以支持高级用户针对WebEasyMail系统进行的相关Asp程序开发,登录时密码验证(可选)。 首先在安装邮件服务器之间,我先交代一下如果要在企业内部创建邮件服务器,必须要做好事前的准备工作。 1、服务器容量的要求: 由于邮件服务器不光要作为邮件存储器,还需要存储大量的附件等内容,所有计算机的硬盘要求就比较高了。根据企业规模大小和人数的多少来决定硬盘的大小,一般来说一个上百人的企业,邮件附件限定的2M范围内,邮件服务器不用来存储其它什么内容的话,400G的硬盘空间可以使用一年,也就是服务器空间清理可以在一年的时间做一次。当然如果没有那么大的硬盘,我们可以多准备几块小硬盘,甚至可以使用磁盘阵列,以扩大磁盘容量和提高稳定性,这些事前可以根据实际需要来定。 2、安全性的要求: 企业邮件服务器,往往都保存了很多机密内容,为了达到安全效果和容错性能,那我们就要在事先做和防护措施了。为了防止病毒感染我们可以打好补丁,装好防火墙。为了达到很好的容错功能,我们可以使用动态磁盘中的raid-5卷,或采用镜像卷(这种方式有点浪费空间了)。 所有的准备工作做好后我们就可以准备安装WebEasyMail了。现在我们就来看看具体的操作步骤和需要注意的事项。 安装WebEasyMail很简单我们就直接按照向导一步步的点击就可以了。如图一 图一 WebEasyMail这款软件是由马坚开发的,当安装完成之后,我们找到开始菜单(或双击桌面快捷方式)启动该软件,然后我们可以在任务栏中看到它如图二所示。 图二 为了邮件服务器的安全,我们还可以安装一些杀毒软件,防止邮件病毒的传播,比如安装KV2004,不过在这我们要注意的是,安装KV2004并按WEBEASYMIAL帮助内容设定,使KV2004与WEBEASYMAIL联合起到邮件杀毒作用(将KV2004更新到最新版本,最好限制其只能杀WEBEASYMAIL\TEMP目录),从而可以防止病毒借助邮件传播。 软件安装好了,怎么样才能让我们的软件正常的工作呢?接下来我们就多软件做一些基本的设置吧。 1、帐户设置 为了服务器的安全,用户帐号也是非常重要的,我们给予安装WebEasyMail的盘符以及父目录以Internet来宾帐户(Iuse_*)然后对其授权.授予该帐号[读取\运行\列出文件夹目录] 的权限就可以了,另外对于WEBEASYMAIL的安装目录,INTERNET访问帐号完全控制, 给予[超级用户/SYSTEM]在安装盘和目录中[完全控制]权限,重启IIS以保证设定生效。 2、对垃圾邮件的防止和保护功能的设置 在服务器上点击右下角图标,然后在弹出菜单的“系统设置”-->“收发规则”中选中“启用SMTP发信认证功能”项(如图三所示),然后再点击“防护”选项卡,“启用外发垃圾邮件自动过滤功能”项,然后再启用其设置中的“允许自动调整”项,邮件的防护设置都是在这里完成的(如图四所示)在“防护”选项卡中我们主要可以设置:“拒绝来自指定IP或服务器的连接有和邮件”、“外发垃圾邮件和自动过滤功能”、“关键字过滤”、“攻击保护”、“邮件附件名过滤”、“邮件内容过滤”的设置。这样设置就可以有效的防范外发垃圾邮件,和保护邮件的功能。 图三 图四 3、收件人数的的限制 这项设置仍然是在服务器上点击右下角图标,然后在弹出菜单的“系统设置”-->“收发规则”中设置“最大收件人数”-----> 默认是“10”。不过我们需要根据企业内部的具体人数来设定人数。(如图三所示) 4、邮箱管理 在服务器上点击右下角图标,然后在弹出菜单的“工具”-->“邮箱管理” (如图五所示) 在这里我们主要可以对“域名”和“邮箱空间”等内容的设置 图五 5、“高级”设置 在服务器上点击右下角图标,然后在弹出菜单的“高级”(如图六所示)。 图六 在这里我们可以对“用户”选项卡设置,用户选项卡主要功能是,对垃圾帐户进行清理,比如说,有人注册了帐号但是长期不使用,我们就可以让系统自动的在一定的时间范围内,把长期没有使用的帐号给清楚掉,以释放用户空间;“邮件”选项卡设置,邮件选项卡主要功能是,定期删除或转移一定时间范围内的邮件;“监控”选项卡设置,监控选项卡主要功能是,对一些有反动宣传和恶意攻击别人的用户帐号进行监控; “安全”选项卡设置,安全选项卡主要功能是,对信任域邮件接受和对垃圾邮件过滤等功能;另外在这还可以对“邮件列别”、“web”等内容的设置。 5、“高级”设置 在服务器上点击右下角图标,然后在弹出菜单的“高级”(如图七所示)。 图七 域名管理主要是实现域名添加和删除,比如现在我在窗口中创建了“”域,如果要是想让我们新建的域生效,我们好要与“邮箱管理”(图五)结合,进行“转换”域名。这样一来我们新建的域名才能够生效和使用。 6、其它 除了上面那些基本设置之外还有很多其它需要注意的问题,比如附加大小设置、系统备份、常见错误解决等等,在这里我无法把邮件服务器很详细的给大家介绍,只能把一些常规设置给大家说说。如果大家在使用WebEasyMail过程中遇到什么问题欢迎大家与我交流。 附录资料: Ehcache缓存配置 简介 Cache的配置很灵活,官方提供的Cache配置方式有好几种。你可以通过声明配置、在xml中配置、在程序里配置或者调用构造方法时传入不同的参数。 你可以将Cache的配置从代码中剥离出来,也可以在使用运行时配置,所谓的运行时配置无非也就是在代码中配置。以下是运行时配置的好处: ·   在同一个地方配置所有的Cache,这样很容易管理Cache的内存和磁盘消耗。 ·   发布时可更改Cache配置。 ·   可再安装阶段就检查出配置错误信息,而避免了运行时错误。 本文将会对ehcache.xml配置文件进行详细的阐述。在配置的时可以拷贝一个现有的ehcache.xml,如果没有请点击这里去下载。 ehcache-failsafe.xml 如果你调用了CacheManager默认构造方法去创建CacheManager的实例,此方法会到classpath中找ehcache.xml文件,否则它会到类路径下找ehcache-failsafe.xml文件。而ehcache-failsafe.xml被包含在jar包中,所有它肯定能找的到。 ehcache-failsafe.xml提供了一个非常简单的默认配置,这样可以使用户在没有创建ehcache.xml的情况下使用Ehcache。 不过这样做Ehcache会提醒用户创建一个正确的Ehcache配置。 ehcache.xml片段: <ehcache>     <diskStore path="java.io.tmpdir"/>     <defaultCache             maxElementsInMemory="10000"             eternal="false"             timeToIdleSeconds="120"             timeToLiveSeconds="120"             overflowToDisk="true"             maxElementsOnDisk="10000000"             diskPersistent="false"             diskExpiryThreadIntervalSeconds="120"             memoryStoreEvictionPolicy="LRU"             /> </ehcache> ehcache.xml和其他配置文件 在Ehcache-1.6之前的版本,只支持ASCII编码的ehcache.xml配置文件。在Ehcach-1.6之后版本中,支持UTF8编码的ehcache.xml配置文件。因为向后兼容,所有采用ASCII编码的配置文件完全没有必要转换为UTF8。 一个CacheManager必须要有一个XML配置。由于磁盘路径或是监听端口,多个CacheManager使用同一个配置文件时会出现错误。 下面是ehcache.xml具体实例以及配置指南 <ehcache xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance ·   CacheManager配置 DmulticastGroupPort=4446,这样可以配置监听端口。 ·   DiskStore配置 如果你使用的DiskStore(磁盘缓存),你必须要配置DiskStore配置项。如果不配置,Ehcache将会使用java.io.tmpdir。 diskStroe的“path”属性是用来配置磁盘缓存使用的物理路径的,Ehcache磁盘缓存使用的文件后缀名是.data和.index。 <disStore path=”java.io.tmpdir”/> ·   CacheManagerEventListener配置 我们通过CacheManagerEventListenerFactory可以实例化一个CacheManagerPeerProvider,当我们从CacheManager中added和removed Cache时,将通知CacheManagerPeerProvider,这样一来,我们就可以很方面的对CacheManager中的Cache做一些统计。 注册到CacheManager的事件监听类名有: adding a Cache和removing a Cache <cacheManagerEventListenerFacotory class=”” properties=””/> ·   CacheManagerPeerProvider配置 在集群中CacheManager配置CacheManagerPeerProviderFactory创建CacheManagerPeerProvider。具体的实例如下: <cacheManagerPeerProviderFactoryclass="net.sf.ehcache.distribution. RMICacheManagerPeerProviderFactory" properties="peerDiscovery=manual, rmiUrls=//server1:40000/sampleCache1|//server2:40000/sampleCache1| //server1:40000/sampleCache2|//server2:40000/sampleCache2" propertySeparator="," /> ·   CacheManagerPeerListener配置 CacheManagerPeerListener配置是用来监听集群中缓存消息的分发的。 <cacheManagerPeerListenerFactory     class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"     properties="hostName=fully_qualified_hostname_or_ip,                 port=40001,                socketTimeoutMillis=120000"                 propertySeparator="," /> ·   Cache配置 ·           name:Cache的唯一标识 ·           maxElementsInMemory:内存中最大缓存对象数。 ·           maxElementsOnDisk:磁盘中最大缓存对象数,若是0表示无穷大。 ·           eternal:Element是否永久有效,一但设置了,timeout将不起作用。 ·           overflowToDisk:配置此属性,当内存中Element数量达到maxElementsInMemory时,Ehcache将会Element写到磁盘中。 ·           timeToIdleSeconds:设置Element在失效前的允许闲置时间。仅当element不是永久有效时使用,可选属性,默认值是0,也就是可闲置时间无穷大。 ·           timeToLiveSeconds:设置Element在失效前允许存活时间。最大时间介于创建时间和失效时间之间。仅当element不是永久有效时使用,默认是0.,也就是element存活时间无穷大。 ·           diskPersistent:是否缓存虚拟机重启期数据。(这个虚拟机是指什么虚拟机一直没看明白是什么,有高人还希望能指点一二)。 ·           diskExpiryThreadIntervalSeconds:磁盘失效线程运行时间间隔,默认是120秒。 ·           diskSpoolBufferSizeMB:这个参数设置DiskStore(磁盘缓存)的缓存区大小。默认是30MB。每个Cache都应该有自己的一个缓冲区。 ·           memoryStoreEvictionPolicy:当达到maxElementsInMemory限制时,Ehcache将会根据指定的策略去清理内存。默认策略是LRU(最近最少使用)。你可以设置为FIFO(先进先出)或是LFU(较少使用)。这里比较遗憾,Ehcache并没有提供一个用户定制策略的接口,仅仅支持三种指定策略,感觉做的不够理想。 ·   Cache Exception Handling配置 <cacheExceptionHandlerFactory class="com.example.ExampleExceptionHandlerFactory"                               properties="logLevel=FINE"/> 总结 这里只对通用缓存的配置做了详细的阐述,至于RMI缓存和集群缓存可以参考这里。 下面给出几个配置示例: ·   Ehcache默认Cache配置 <defaultCache         maxElementsInMemory="10000"         eternal="false"         timeToIdleSeconds="120"         timeToLiveSeconds="120"         overflowToDisk="true"         diskSpoolBufferSizeMB="30"         maxElementsOnDisk="10000000"         diskPersistent="false"         diskExpiryThreadIntervalSeconds="120"         memoryStoreEvictionPolicy="LRU"         /> ·   SampleCache1配置 简单配置,在ehcache.xml文件中有此配置,在使用Ehcache前最好将其删除掉,自己配置。 缓存名sampleCache1,内存中最多可缓存10000个Element,其中的element会在闲置5分钟或是存活10分钟之后失效。 超过10000element时,element将会输出到磁盘中,输出路径是java.io.tmpdir。 <cache name="sampleCache1"        maxElementsInMemory="10000"        maxElementsOnDisk="1000"        eternal="false"        overflowToDisk="true"        diskSpoolBufferSizeMB="20"        timeToIdleSeconds="300"        timeToLiveSeconds="600"        memoryStoreEvictionPolicy="LFU"         /> ·   SampleCache2配置 Cache名为SampleCache2,内存中最多可以缓存1000个element,超出1000不能输出到磁盘中。缓存是永久有效的。 <cache name="sampleCache2"        maxElementsInMemory="1000"        eternal="true"        overflowToDisk="false"        memoryStoreEvictionPolicy="FIFO"         /> ·   SampleCache3配置 Cache名为SampleCache3。可缓存到磁盘。磁盘缓存将会缓存虚拟机重启期的数据。磁盘缓存失效线程运行间隔时间是10分钟。 <cache name="sampleCache3"        maxElementsInMemory="500"        eternal="false"        overflowToDisk="true"        timeToIdleSeconds="300"        timeToLiveSeconds="600"        diskPersistent="true"        diskExpiryThreadIntervalSeconds="1"        memoryStoreEvictionPolicy="LFU"         /> ·   sampleDistributedCache1配置 Cache名为sampleDistributedCache1。 <cache name="sampleDistributedCache1"        maxElementsInMemory="10"        eternal="false"        timeToIdleSeconds="100"        timeToLiveSeconds="100"        overflowToDisk="false">     <cacheEventListenerFactory             class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"/>     <bootstrapCacheLoaderFactory             class="net.sf.ehcache.distribution.RMIBootstrapCacheLoaderFactory"/> </cache> ·   sampleDistributedCache2配置 <cache name="sampleDistributedCache2"        maxElementsInMemory="10"        eternal="false"        timeToIdleSeconds="100"        timeToLiveSeconds="100"        overflowToDisk="false">     <cacheEventListenerFactory             class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"             properties="replicateAsynchronously=false, replicatePuts=false,                         replicateUpdates=true, replicateUpdatesViaCopy=true,                        replicateRemovals=false"/> </cache> ·   sampleDistributedCache3配置 <!-- Sample distributed cache named sampleDistributedCache3. This cache replicates using defaults except that the asynchronous replication interval is set to 200ms. --> <cache name="sampleDistributedCache3"        maxElementsInMemory="10"        eternal="false"        timeToIdleSeconds="100"        timeToLiveSeconds="100"        overflowToDisk="false">     <cacheEventListenerFactory             class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"             properties="asynchronousReplicationIntervalMillis=200"/> </cache>
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服