Apache James使用入門

來源:互聯網
上載者:User
 

一、簡介
 


Apache James(Java Apache Mail Enterprise Server)是Apache組織的子項目之一,完全採用純Java技術開發,實現了SMTP、POP3與NNTP等多種郵件相關協議。

James也是一個郵件應用平台,可以通過Mailet擴充其功能,如Mail2SMS、Mail2Fax等。James提供了比較完善的配置方案,尤其是關於郵件內容儲存和使用者資訊儲存部分,可以選擇在檔案、資料庫或其他介質中儲存。

James效能穩定、可配置性強,還是開源項目,所有原始碼不存在著作權問題,因此,James在項目中的應用日益廣泛,現在常用版本為2.1,但最新版本2.3已經推出,在本文中,我們將仍以James2.1作為介紹藍本。

二、安裝與配置

James的安裝配置過程非常簡單。

第一步:安裝JDK

請使用JDK1.3以上版本(推薦使用JDK1.4),假設安裝在c:/jdk1.3。

第二步:下載James,並解壓

可以到Apache網站上下載James2.1,下載將得到一個壓縮檔james-2.1.zip,大小為4.45M,將此包解壓到c:/james。

第三步:直接運行或需要配置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.1
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.3
if not "%JAVA_HOME%"=="" goto found_java
……

      修改完後再運行run.bat,應該就可以正常啟動了,若還有什麼問題,請參見本文的FAQ部分

項目應用

 

三、項目應用
 


1、  項目需求

某單位,有16個職能處室,共78台電腦(作業系統為Win98/2000/xp),其中有1台為專用伺服器(Win2000),已連成區域網路。為使單位內部的資訊交流,尤其是檔案互動更加便捷,單位決定在區域網路內部架設一套E-mail系統。

2、  解決方案

在專用伺服器上安裝James2.1,用戶端使用作業系統內建的Outlook Express。

3、  伺服器端配置

首先找出專用伺服器的名字,假設叫unitname。

然後開啟檔案c:/james/apps/james/SAR-INF/config.xml。

在config.xml檔案中,找到<postmaster>Postmaster@localhost</postmaster>,把此項改為<postmaster>Postmaster@unitname</postmaster>,同理,找到<servername>localhost</servername>,把此項改為<servername>unitname</servername>。其實,改這兩項就是把預設的localhost改為機器名,這樣做是為了讓其它機器也能訪問郵件系統,當然,前提是在區域網路上沒有與伺服器重名的機器。

4、  用戶端配置

假設有一個帳號,使用者名稱為holen,密碼為123456,如何在Outlook中配置呢?

首先,根據使用者名稱,可以得出該使用者郵箱地址為holen@unitname ,然後在輸入POP3和SMTP伺服器時,直接使用伺服器機器名unitname即可。

5、  帳號管理

James的帳號管理是通過telnet完成的,登入命令為:

telnet unitname 4555

其中unitname也可以換成IP,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。

通過這個後台管理介面,管理員就可以實現帳號管理及其他相應的管理功能。

6、  應用情況

這套系統在該單位經過一周的試運行後,已正式運行兩個月,使用者數約百人,一直很穩定,期間,因作業系統故障,伺服器重啟兩次,其他時間,一直處於運行狀態,效能穩定,響應速度快。

FAQ

 

四、FAQ

1、  在啟動james時,提示POP3或SMTP不能使用?

請檢查一下,看“管理工具—>服務”裡面,是不是啟動了別的郵件伺服器,已將110或25連接埠佔用了。

2、  JAVA_HOME找不到?

請在run.bat中指定JAVA_HOME,若還不行,請在“我的電腦—>系統—>進階—>環境變數”中添加一項JAVA_HOME(一般不推薦這麼做)。

3、  伺服器啟動正常,但用戶端不能收發郵件?

請檢查用戶端配置是否正常,參照前面所講,另外,請檢查james下的config.xml,是否把localhost改成了機器名。

五、總結

總體而言,James是一款十分優秀的郵件伺服器,具有效能穩定、擴充性好、可配置性強、響應速度快、源碼公開等優點。同時,由於James的後台管理不夠方便、缺少必要的支援人員等原因,限制了james的高端企業級應用。

就目前情況而言,James主要用於1000使用者量以內的郵件系統,而且當James用於商業性項目時,開發商一般需要對James進行相應的封裝,主要是後台管理這一塊。

六、參考資料

James 2.1 Documentation

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.