用JAMES实现自己的邮件服务器1 用JAMES实现自己的邮件服务器2
主要注意:
1.运行 james\bin\run.bat 这样有些文件才会解压
2.主要的配置文件是:james\apps\james\SAR-INF\config.xml
3.在james\apps\james\SAR-INF 目录下创建 lib 目录,自己定义的jar文件就放在这个lib里
4.把james\apps\james.sar 解压,里面有需要的mailet-2.3.jar,mailet-api-2.3.jar,mail-1.4.1.jar,james-2.3.2.jar
5.运行的日志文件为:james\logs\phoenix.log
简介
James 是一个企业级的邮件服务器,它完全实现了smtp 和 pops 以及nntp 协议。同时,james服务器又是一个邮件应用程序平台。James的核心是Mailet API,而james 服务齐是一个mailet的容器。它可以让你非常容易的实现出很强大的邮件应用程序。James开源项目被广泛的应用于与邮件有关的项目中。你可以通过它来搭建自己的邮件服务器。我们可以利用Mailet API,编程接口来实现自己所需的业务。James集成了Avalon 应用程序框架以及
Phoenix Avalon
框架容器。
Phoenix
为
james
服务器提供了强大的支持。需要说明的是
Avalon
开源项目目前已经关闭。
快速上手
安装james
现在让我们开始我们激动人心的
james
之旅。首先我们将
james-binary-2.3.1.zip
解压缩下载到你的安装目录。我们可以把这个过程理解为安装的过程。我在这里将它解压到
c:\.
并且把它改名为
james.
这样我们的
james
就安装好了。目录为
C:\james
。很简单吧!
准备知识 - 学习一些必要的知识
在我使用
james
的时候让我感觉首先理解
james
的应用程序结构是很重要的。否则你会在使用中感到很困惑。
它的应用程序结构是这样的:
James
|_ _apps
|_ _bin
|_ _conf
|_ _ext
|_ _lib
|_ _logs
|_ _tools
我们重点介绍一下两个文件夹
bin
和
apps.
bin
目录中的
run.bat
和
run.sh
是
James
的启动程序。只要记住这个重要文件就可以。
启动之后控制台显示如下:
Using PHOENIX_HOME: C:\james
Using PHOENIX_TMPDIR: C:\james\temp
Using JAVA_HOME: C:\j2sdk1.4.2_02
Using PHOENIX_TMPDIR: C:\james\temp
Using JAVA_HOME: C:\j2sdk1.4.2_02
Phoenix 4.2
James Mail Server 2.3.1
Remote Manager Service started plain:4555
POP3 Service started plain:110
SMTP Service started plain:25
NNTP Service started plain:119
FetchMail Disabled
Apps 目录下有个james的子目录这个目录是它的核心。
james
|_ _SAR-INF
|_ _conf
|_ _logs
|_ _var
|_mail
|_address-error
|_error
|_indexes
|_outgoing
|_relay-denied
|_spam
|_spool
|_nntp
|_....
…
|_users
SAR-INF
下有一个
config.xml
是
james
中的核心配置文件。
Logs
包含了与
james
有关的
Log
。调试全靠它了。
Var
包含了一些文件夹通过它们的名字我们大概也能猜测出它们的用途。
Mail
主要用于存储邮件。
nntp
主要用于新闻服务器。
Users
用于存储所有邮件服务器的用户。也就是邮件地址前面的东东。如:
pig@sina.com的pig
就是所谓用用户。
创建用户:
我们在
James
上建若干用户,用来测试收发邮件。当然如果你不用
james
本身的用户也可以。
James
以
telnet
的方式提供了接口用来添加用户。下面我来演示一下。
首先使用
telnet
来连接
james
的
remote manager .
1.telnet localhost 4555
回车
2.
然后输入管理员用户名和密码(
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
3.
添加用户
adduser kakaxi kakaxi
User kakaxi added
Adduser mingren mingren
User mingren added
4.
查看添加情况
listusers
Existing accounts 2
user: mingren
user: kakaxi
得到上面的信息说明我们已经添加成功。
发送器
这个类主要用来测试我们的邮件服务器,可以不用将其打入包中。
java 代码