James邮件服务器简单介绍及配置发送外网邮件【转】

原创地址:http://blog.csdn.net/ansha886/article/details/7085758

【此贴作为参考是目前看到最为清晰的】

一、简介

Apache James(Java Apache Mail Enterprise Server)是Apache组织的子项目之一,完全采用纯Java技术开发,实现了SMTP、POP3与NNTP等多种邮件相关协议。

James也是一个邮件应用平台,可以通过Mailet扩充其功能,如Mail2SMS、Mail2Fax等。James提供了比较完善的配置方案,尤其是关于邮件内容存储和用户信息存储部分,可以选择在文件、数据库或其他介质中保存。

本文将以James2.3.2版本作为介绍


二、安装与配置
James的安装配置过程非常简单。

第一步:安装JDK

请使用JDK1.3以上版本(推荐使用JDK1.5),假设安装在c:/jdk1.5。

第二步:下载James,并解压

可以到Apache网站上下载Jamesjames-2.3.2,下载将得到一个压缩文件james-2.3.2.zip,大小为7.30M,将此包解压到c:/james。

下载地址:官方地址:http://james.apache.org/

下载地址:http://mirror.utdlug.org/apache/james/server/binaries/james-binary-2.3.1.zip 


第三步:直接运行或需要配置JAVA_HOME

这时,可以尝试直接双击c:/james/bin/run.bat,若启动无误,将提示如下:

Using PHOENIX_HOME:   C:/james
Using PHOENIX_TMPDIR: C:/james/temp
Using JAVA_HOME:

Phoenix 4.0.1

James 2.3.2
Remote Manager Service started plain:4555
POP3 Service started plain:110
SMTP Service started plain:25
NNTP Service Disabled
Fetch POP Disabled

也有可能启动不了,并报JAVA_HOME找不到,这时,需要指定JAVA_HOME,比较简单的方法是在c:/james/bin/run.bat中指定JAVA_HOME,修改后的run.bat如下:

……
rem
rem Determine if JAVA_HOME is set and if so then use it
rem
set JAVA_HOME= c:/jdk1.5
if not "%JAVA_HOME%"=="" goto found_java
……

修改完后再运行run.bat,应该就可以正常启动了


第四步:服务器配置

首先找出专用服务器的名字,假设叫weimao。

然后打开文件c:/james/apps/james/SAR-INF/config.xml。

在config.xml文件中,找到<postmaster>Postmaster@localhost</postmaster>,把此项改为<postmaster>Postmaster@weimao</postmaster>,同理,找到<servername>localhost</servername>,把此项改为<servername>weimao</servername>。其实,改这两项就是把默认的localhost改为机器名,这样做是为了让其它机器也能访问邮件系统,当然,前提是在局域网上没有与服务器重名的机器。


帐号管理

James的账号管理是通过telnet完成的,登录命令为:

telnet localhost 4555

登录时需要用户名和密码,初始的用户名和密码均为root。若登录成功,提示如下:

JAMES Remote Administration Tool 2.1
Please enter your login and password
Login id:
Password:
Welcome root. HELP for a list of commands 

需要注意的是,所有敲入的命令都不显示在屏幕上。
输入help,将出现命令的帮助,信息如下:

JAMES Remote Administration Tool 2.1
Please enter your login and password
Login id:
Password:
Welcome root. HELP for a list of commands
Currently implemented commands:
help                                    display this help
listusers                               display existing accounts
countusers                              display the number of existing accounts
adduser [username] [password]           add a new user
verify [username]                       verify if specified user exist
deluser [username]                      delete existing user
setpassword [username] [password]       sets a user's password
setalias [alias] [user]                 locally forwards all email for 'alias' t
o 'user'
unsetalias [alias]                      unsets an alias
setforwarding [username] [emailaddress] forwards a user's email to another email
address
unsetforwarding [username]              removes a forward
user [repositoryname]                   change to another user repository
shutdown                                kills the current JVM (convenient when J
ames is run as a daemon)
quit                                    close connection

常用的命令有listusers、countusers、adduser、deluser、setpassword等。

其中添加用户为adduser,例如:adduser holen 123456。

通过这个后台管理界面,管理员就可以实现账号管理及其他相应的管理功能。


接下来可以用客户端连接发送测试邮件了,我采用的formail。

打开formail点击新建一个帐号。比如我刚才添加了一个帐号weimao,密码为123456如何在Outlook中配置呢。如何在formail中配置呢?

首先,根据用户名,可以得出该用户邮箱地址为weimao@weimao ,然后在输入POP3和SMTP服务器时,直接使用服务器机器名weimao即可。


接下来最终要的一个环节。就是我们搭建服务器是要给外网的邮箱发送的。

下面讲如何配置发送: 

打开../james/apps/james/SAR-INF/config.xml文件, 
1. 找到<servernames autodetect="true" autodetectIP="true"> 设成 <servernames 
  autodetect="false" autodetectIP="false"> autodetct设为true会自动侦测你的主机名, 
  设成false会用你指定的server name. autodetectIP设为true会为你的servername加上ip. 
2. 设置servername 将默认的为localhost改成你的server名字 如weimao.net, 然后打开   
  C:/WINDOWS/system32/drivers/etc/hosts文件,添加 127.0.0.1   weimao.net
3. 注释掉 
    <mailet match="RemoteAddrNotInNetwork=127.0.0.1" class="ToProcessor> 
    <processor> relay-denied </processor> 
    <notice>550 - Requested action not taken: relaying denied</notice>

    </mailet> 
4. 配置DNS Server 
  在cmd中用ipconfig /all 命令查看你的dns server ip 
  DNS Servers . . . . . . . . . . . : 202.96.209.6 
                        192.168.1.1

  添加如下: 
  <dnsserver> 
    <servers> 
    <server>202.96.209.6</server> 
    <server>192.168.1.1</server>
 
  同时设置autodiscover为false 
5.重启server 就ok了。

本人发送给126,163,QQ都没问题,hotmail和sina会当做junk mail拒收.sina会去反域名解析,如果你有域名的话应该没问题的.

如果有域名的话直接配置一下MX就可以了。剩下的就是我们采用程序来进行发送,在这里我就不贴代码了,网上一大推。大家自己去看看吧。

有什么问题可以直接邮件我:licheng0601@126.com<注:此处为原著email>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值