用JAMES实现自己的邮件服务器

James邮件服务器搭建
本文详细介绍如何使用James构建邮件服务器,包括安装步骤、配置文件解析及用户管理等关键内容。

用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 2.3.1 。大家可以从这里下载到 http://james.apache.org/download.cgi
  现在让我们开始我们激动人心的 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

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.compig 就是所谓用用户。
 
 
创建用户:
 我们在 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 代码
  1. package com.yy.jamesstudy;   
  2.   
  3. import java.util.Date;   
  4. import java.util.Properties;   
  5.   
  6. import javax.mail.Authenticator;   
  7. import javax.mail.Message;   
  8. import javax.mail.PasswordAuthentication;   
  9. import javax.mail.Session;   
  10. import javax.mail.Transport;   
  11. import javax.mail.internet.InternetAddress;   
  12. import javax.mail.internet.MimeMessage;   
  13.   
  14. public class Mail {   
  15.     private String mailServer, From, To, mailSubject, MailContent;   
  16.   
  17.     private String username, password;   
  18.   
  19.     private Session mailSession;   
  20.   
  21.     private Properties prop;   
  22.   
  23.     private Message message;   
  24.   
  25.     // Authenticator auth;//认证   
  26.     public Mail() {   
  27.         // 设置邮件相关   
  28.         username = "kakaxi";   
  29.         password = "kakaxi";   
  30.         mailServer = "localhost";   
  31.         From = "kakaxi@localhost";   
  32.         To = "mingren@localhost";   
  33.         mailSubject = "Hello Scientist";   

转载于:https://my.oschina.net/baobao/blog/9309

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值