免费论文网 首页

james

时间:2018-11-09 11:30 来源:免费论文网

篇一:James 搭建邮件服务器

Apache James 简称 James, 是 Java Apache Mail Enterprise Server的缩写。James 是100%基于Java的电子邮件服务器。它是一种独立的邮件服务器,并提供了一个完整的电子邮件解决方案,用来收、发电子邮件。

本文不赘述James服务器的参数细节,这个以后有机会再详细讨论,这里先从服务器搭建开始,用搭建的服务器收、发电子邮件来熟悉一下Apache James。本人也是新手,希望能得到各位高手的指点,使大家能悟到进阶的方向。

开始之前,先声明一下本文操作的系统环境:

1. JDK 6u10b

2. JMail API v1.4.2

3. JAF API v1.1(JavaBean Activation Framework)

4. Apache James 2.3.1

5. Eclipse 3.4 for J2EE Developers

6. Windows 2000 Server sp4

1。请下载安装JDK,并设置好其环境变量:JAVA_HOME=?? 、PATH=?? 、CLASSPATH=?? Eclipse 3.4 是目前的最新版本,可以从找到他们,找不到也不要紧,本文附件示例代码免费提供一份(^_^)。

3。Apache James 的官方网站为:http://james.apache.org/,当前 Server 的最新版为 2.3.1版. 安装非常简单,下载后得到

james-binary-2.3.1.zip 文件,解压后即可。这里假设解压到D盘

(D:\james-2.3.1),目录结构如下:

D:\james-2.3.1

|--- apps

|--- bin

|

????

4。启动 James 服务器

双击或在命令行下执行D:\james-2.3.1\bin 目录下的 run.bat文件,即可启动 James 服务器。

启动后能在控制台看到如下信息,说明启动成功:

Java代码

1. Using PHOENIX_HOME: D:\james-2.3.1

2. Using PHOENIX_TMPDIR: D:\james-2.3.1\temp

3. Using JAVA_HOME: D:\Java\jdk1.6.0_10

4.

5. Phoenix 4.2

6.

7. James Mail Server 2.3.1

8. Remote Manager Service started plain:4555

9. POP3 Service started plain:110

10.SMTP Service started plain:25

11.NNTP Service started plain:119

12.FetchMail Disabled

要关闭 James 服务,请使用 Ctrl + C

说明:启动前请确保您的JDK环境变量如JAVA_HOME等已经设置好;James 启动时,其SMTP 服务默认在 25 端口启动,POP3 服务默认在 110 端口启动, NNTP 服务默认在 119 端口启动, 请确保这些端口未被占用。比如本系统下就已经安装了Microsoft的 SMTP 服务,造成 James无法启动,解决方法为:开始--->设置--->控制面板--->管理工具--->服务,打开后找到“Simple Mail Transport Protocol(SMTP)”服务项,关闭即可。

5。配置服务

服务器启动后会在本机配置一个默认的服务,这可以用来在本机上本服务器范围内收发邮件,但是邮件发不到163等外网邮箱。我们这里关注的重点就是配置一个能发到外网如163这样的邮箱的邮件,这样才有价值。不过由于本人是在本机上测试,一时不能获取公司的域名参数,无法测试接收外网邮箱(如163)的邮件,见晾,不过做法都是一样的,至少我们可以向外网邮箱发送邮件,局域网内可以收、发邮件。

打开D:\james-2.3.1\apps\james\SAR-INF 下的 config.xml 文件,初次启动James之前,不会有这个文件,只有当James服务启动一次之后才自动构件该文件。

找到

Java代码

1. ??

2. <postmaster>Postmaster@localhost</postmaster>

3. ??

4. <servernames autodetect="true" autodetectIP="true">

5. <servername>localhost</servername>

6. </servernames>

7. ??

把localhost该成你自己想要的邮箱域名, 把自动探测IP属性设置为“false”这里假设改成 zhaipuhong.com 如果开了一个帐号 zph ,那么他的邮件地址就是 zph@zhaipuhong.com (^_^)修改结果如下:

Xml代码

1. ??

2. <postmaster>Postmaster@zhaipuhong.com</postmaster>

3. ??

4. <servernames autodetect="false" autodetectIP="false">

5. <servername>zhaipuhong.com</servername>

6. </servernames>

7. ??

找到

Xml代码

1. <mailet match="RemoteAddrNotInNetwork=127.0.0.1" class="ToProcessor">

2. <processor> relay-denied </processor>

3. <notice>550 - Requested action not taken: relaying denied</notice>

4. </mailet>

将其注释,结果如下:

Xml代码

1. <!--mailet match="RemoteAddrNotInNetwork=127.0.0.1" class="ToProcessor">

2. <processor> relay-denied </processor>

3. <notice>550 - Requested action not taken: relaying denied</notice>

4. </mailet-->

3.配置dnsserver

输入自己上网时获得的运营商分配的DNS地址,配置后如:

<server>127.0.0.1</server>

<server>219.150.32.132</server>

如果只是内网使用只需保留启用<server>127.0.0.1</server>即可。

需要设置 <autodiscover>true</autodiscover>改为false如果设置为自动探测的话,在我的机器上会报错:

4.修改root口令。account login="root" password="mypassword"此项不修改也没关系。

5.smtpserver打开smtp认证

将<authRequired>false</authRequired>改为<authRequired>true</authRequired>

6.重新启动James就生效了,就可以向163及其它互联网邮件服务器发送邮件了。

这样邮箱访问需要帐号验证,你不希望别人用你的帐号收发消息吧??^_^

如此,James服务配置已经完成。

另外为了方便使用,可以把james加载为WINDOWS启动项目

将C:\James\james-2.1\conf目录下的wrapper.conf拷贝到

C:\James\james-2.1\bin即包含wrapper.exe的目录下,运行:

wrapper.exe -i C:\James\james-2.1\bin\wrapper.conf

然后在控制面板中开启服务或重启即可。

卸载后台服务:

到C:\James\james-2.1\bin即包含wrapper.exe的目录下,运行:

wrapper.exe-rC:\James\james-2.1\bin\wrapper.conf

6。创建邮件帐号

创建邮件帐号后,就可以用来收发邮件了。James的账号管理是通过基于Telnet客户机的远程管理器,这点颇为不爽,尤其是我的操作系统下的命令行控制台是不显示telnet命令输入字符的,经常出错。

现在进入命令行控制台,在telnet localhsot 4555 进入James管理器,操作如下:

C代码

篇二:James邮件服务器简单介绍及配置发送外网邮件

一、简介

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: helpdisplay this help listusers display existing accounts countusersdisplay 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) quitclose 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.1weimao.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

篇三:James简单运行配置

James简单运行配置

James:Java Apache Mail Enterprise Server 是一个企业级的JAVA邮件服务器.开源的.

一.配置;

首先将james-binary-2.3.1.zip解压缩下载到你的安装目录。

我们可以把这个过程理解为安装的过程。我在这里将它解压到c:\.并且把它改名为james.这样我们的james就安装好了。目录为C:\james。在此之前你得安装JDK,配置JAVA环境变量.

james的应用程序结构

apps,bin,conf,ext,lib,logs,tools

文件夹bin

bin目录中的run.bat和run.sh是James的启动程序。只要记住这个重要文件就可以。 启动之后控制台显示如下:

Using PHOENIX_HOME: C:\james //james安装目录

Using PHOENIX_TMPDIR: C:\james\temp //james安装目录中的temp目录,用处不详

Using JAVA_HOME: C:\javaJdk //本机安装的JDK目录

James Mail Server 2.3.1 //james版本

Remote Manager Service started plain:4555 //james端口

POP3 Service started plain:110 //pop3 端口,可在config.xml中配置 SMTP Service started plain:25 //smtp 端口,可在config.xml中配置 NNTP Service started plain:119 //nntp 端口,可在config.xml中配置 FetchMail Disabled

文件夹Apps

Apps 目录下有个james的子目录这个目录是它的核心。

?

?

? SAR-INF 下有一个config.xml是james中的核心配置文件。 Logs 包含了与james有关的Log。调试全靠它了。 Var 包含了一些文件夹通过它们的名字我们大概也能猜测出它们的用途。Mail主要用于存储邮件。nntp主要用于新闻服务器。Users用于存储所有邮件服务器的用户。也就是邮件地址前面的东东。如:pig@sina.com的pig就是所谓用用户。 创建用户

在James上建若干用户,用来测试收发邮件。当然如果你不用james本身的用户也可以。James以

telnet 的方式提供了接口用来添加用户。下面我来演示一下。

首先使用telnet来连接james的remote manager telnet localhost 4555 回车

这里连接到的是本机:localhost这个也是可以在config.xml里配置的,当然,如果配置成其他服务器,则需要将端口映射到本机上,这个可以在路由器里配置:192.168.0.1(具体地址视局域网而定)。

然后输入管理员用户名和密码(user/pwd : root/root 是默认设置这个可以在config.xml中修改)

JAMES Remote Administration Tool 2.3.1

Please enter your login and password

Login id:

root

Password:

root

Welcome root.HELP for a list of commands

添加用户

adduser kakaxi kakaxi

User kakaxi added

Adduser mingren mingren

User mingren added

查看添加情况

listusers

Existing accouts 2

user:mingren

user:kakaxi 自己项目中的一些配置:

更改配置文件:config.xml:

更改端口:

pop3server -- <port>201</port>

smtpserver -- <port>202</port>

nntpserver -- <port>203</port>

更改邮件服务器地址:

servernames -- <servername>whsite.ine.net.cn</servername>

或:<servername>16.36.58.31</servername>

administrator_accounts -- <account login="sunyu" password="sunyu"/>

收邮件:

(因为是用pop3.whsite.ine.net.cn收邮件,所以收件人,发件人的邮件地址都必须是这个服务器上的,所以我们在whsite.ine.net.cn上重新建一个帐号,然后给自己发邮件以测试);

一,打开james服务;

1)运行安装目录下bin/run.bat;

2)打开CMD;

telnet whsite.ine.net.cn 4555 //连接到服务端口;

JAMES Remote Administration Tool 2.3.1

Please enter your login and password

Login id:

sunyu

Password:

sunyu

Welcome root. HELP for a list of commands

adduser sunyu 123456 //添加用户,用户名为sunyu 密码为:123456 quit //断开连接

telnet whsite.ine.net.cn 201 //连接到POP3端口;

user sunyu 回车;

pass 123456 回车;

list //查看邮件列表;

retr 1 //查看第一封邮件;

其他命令还有:

1,stat 查询邮箱中的所有邮件的统计信息,一般只有邮件总数和所有邮件占用的字节大小

2,uidl 根据邮件的序号查询该邮件的唯一标志符

3,list 查询邮箱中的所有邮件信息,以列表形式列出,自动生成邮件序号。如果指定某一序号则只显示指定邮件信息

4,retr 指定邮件序号查看某邮件内容

5,dele 指定邮件序号将某封邮件设置删除标记,当执行退出命令 quit时将实际删除所有具有删除标记的邮件

6,rset 清除所有设置了删除标记的邮件的删除标记

7,top 获取某邮件的邮件头和邮件体中的前n行内容,指定邮件序号和n,以空格符隔开

发邮件:

1)连接端口;

telnet whsite.ine.net.cn 202

2)确认身份

ehlo sunyu

3)输入发件人;

mail from:<sunyu@whsite.ine.net.cn>

4)输入收件人:

rcpt to:<sunyu@whsite.ine.net.cn>

5)输入内容:


james
由:免费论文网互联网用户整理提供,链接地址:
http://m.csmayi.cn/meiwen/27720.html
转载请保留,谢谢!
相关阅读
最近更新
推荐专题