再介绍一个跨平台的免费邮件服务器James
JAMES,全称Java Apache Mail Enterprise Server,也叫Apache James,呃,跟apache web服务器没有啥关联,只是属于Apache项目下的一个子项目,基于Apache License开源,纯粹JAVA开发的,支持SMTP、POP3和NNTP网络新闻协议,NNTP跟我们无关,直接掠过,是不是没有看到IMAP?没关系,新的开发中的James 3.0已经加入了对IMAP的支持,目前最新版本是2.3.2,暂时还不支持IMAP。官方地址在http://james.apache.org,OK,老夫直接下载james-2.3.2的压缩包回来。
首先呢,你得安装JDK,这里是jdk 1.6版本的,呃,为了其他软件的支持,老夫这里是常备的,直接安装了,安装了jdk就简单了。
把james-2.3.2解压出来,老夫给它改个名james,进入james下的bin目录,看到一个run.bat没,在linux下要运行run.sh,双击run.bat,出现以下提示内容
Using PHOENIX_HOME: E:\james
Using PHOENIX_TMPDIR: E:\james\temp
Using JAVA_HOME:
Phoenix 4.2
James Mail Server 2.3.2
Remote Manager Service started plain:4555
POP3 Service started plain:110
SMTP Service started plain:25
NNTP Service Disabled
FetchMail Disabled
好了,完了。操,这么简单?就这么简单,怎么说跨平台呢,只要你java运行坏境搞好了,直接运行就OK了。
当然,这只是说服务器运行起来了,配置可没这么简单,james的配置文件基本上都是xml文件,跟linux下的配置一样,都是改配置文件的内容,先说说其中几个特殊的概念,这些概念可能其他邮件服务器也有,只是名称叫的不一样。
SMTP、POP、NNTP咱就不说了,地球人都知道,首先是FetchMail,通过名称也大致能猜出它的意思,抓取邮件,也就是从其他的POP3服务器上抓取邮件咯,就是hmailserver中给每个账号设的外部邮箱。spoolmanage,spool我们在弄打印机的时候常看到,一般叫打印池什么的,池管理是啥意思呢,也差不多就是hmailserver中的传递队列,matcher呢,大概就是跟hmailserver中的规则差不多吧,还有个就是Repositories,仓储,邮件啊新闻啊账号什么的,一般是怎样存储的,这个james默认都是以文件方式存储的,但james既然叫enterprise server,企业用起来肯定数据是非常多的,如果都是以文件方式存储运行起来效率肯定是跟不上的,所以james还支持以数据库的方式来存储数据,它支持哪些数据库呢?一般啥oracle、db2、mysql、PostgreSQL、MSSQL等等一系列的,它都支持。最后还有一个RemoteManager,james服务器提供了超强大的远程管理的方式,呃,强大到你吐血,一个telnet服务,上去后输命令,也就是添加删除账号别名什么的,不禁令老夫大汗,呃,如果你很牛逼,可以直接去写后台管理软件吧,james的可扩展性是非常强大的。
先说运行吧,运行了run.bat后,出现个控制台窗口,如果你把它关闭了,james的服务也就停止了,如何让它后台运行呢?不可能每次我启动都要点run.bat啊,james提供了,在bin目录还有个文件,Wrapper.exe,试着在命令行下运行wrapper.exe /?,会列出一系列参数,其中-i参数就是安装一个java的nt server服务,-r就是移除咯。
还是来看配置,james目录下的apps\james\SAR-INF里有config.xml文件,用记事本打开编辑吧,最好是用EditPlus或notepad++之类的编辑工具,可以高亮显示需要配置的字段,括住的都可以不管,不过最好还是看看里面的详细说明,首先是第52行
79行,
然后第552行的
再774行DNS服务器,把注释符去掉,增加几个DNS服务器,再紧接着的是远程管理的配置,端口4555就是telnet端口,如果你不怕死可以改为telnet的默认23端口,省得每次telnet还要输入端口,然后下面
OK了,基本配置完了,关掉那个控制台,重新运行run.bat,邮件服务器就运行起来了。
怎么用?foxmail、outlook伺候呗,webmail?没有,再次隆重推出AfterLogic webmail lite咯,还是wamp,还是php版,不知道咋玩?看哥的另一篇《简单好用的免费邮件服务器hMailServer》,不过要记住一点,james登陆时候的账号名根本不需要像hmailserver那样连着域名输入,直接输账号就行了,所以在AfterLogic webmail管理界面配置的时候,如果照着那篇文章,有个钩钩千万别勾,哥就是在那里登了半小时没登进去,把那个勾去掉就OK了。
fetchmail的配置在apps\james\conf\james-fetchmail.xml里配置,哥就不多说了。
至于怎么沟通外网,哥现在暂没时间深究了,看泥人老兄愿不愿意去测试写更详细了,哥还得去做固定资产盘点。
最后,祝各位哥们清明节快乐,嚯嚯~~~
2010/04/08 18:16:40
我最近一两个月也忙呃
2010/04/08 14:47:16
你多发现些出来。我肯定会写的。。我专门做邮件服务器的测评。。只是目前一个月左右忙。。没有空,过了这段时间。就可以保证了。