基於RPM的sendmail郵件系統安裝與配置

Sendmail+dovecot+openwebmail 配置

 

一、前言

電子郵件系統已經是家喻戶曉的應用系統,目前的主流的郵件系統包括SendMailexchangeLotus NotesQmailPostfix等。對於中小企業來說,基於企業內部的郵件收發應用,這裏採用sendmaildovecot以及openwebmail來搭建整個完整的郵件系統。

二、理解

1.網上很多資料顯示在安裝該郵件系統時,安裝了dns功能,其實安裝sendmaildovecot以及openwebmail這整套郵件系統並不需要給服務器安裝dns服務。只需在域名註冊商處添加域名的mx記錄和A記錄即可。
   比如指定一個mx記錄爲mail.xxx.com,其中xxx爲註冊過的域名,再將mail.xxx.compop3.xxx.com smtp.xxx.com(這兩個可以作爲配置客戶端時用)做一條A記錄指向服務器IP地址。
2Sendmail只是提供smtp功能,也就是隻能對外發送郵件,無法接收外來的郵件,因此還要安裝dovecot這個具有pop3/IMAP功能的包,這樣纔算完整。
3.另外安裝並配置好sendmaildovecot之後,在linux裏或者用客戶端,比如foxmail便可以收發郵件,但是沒有提供web功能,要實現此功能,便要安裝配置openwebmail。當然這需要apache的支持,事先應安裝好apache保持默認安裝即可。

 

三、安裝準備

1.安裝平臺

OSredhat enterprise linux 5 update 3
Apache版本:httpd-2.2.3-22.el5
本次安裝均採用RPM方式安裝
注意安裝系統之前最好安裝全部的編譯工具如perl等,openwebmail需要。如果沒安裝,根據提示安裝依賴包

2.軟件準備

需要準備以下軟件:
sendmail-8.13.8-2.el5.i386.rpm
sendmail-cf-8.13.8-2.el5.i386.rpm
sendmail-doc-8.13.8-2.el5.i386.rpm

 

dovecot-1.0.7-7.el5.i386.rpm

 

openwebmail-2.52-1.i386.rpm

 

3.安裝

A.安裝配置sendmail

由於sendmail的配置文件sendmail.cf較爲複雜,可以修改模版文件sendmail.mc配合sendmail-cf目錄下的宏通過m4預處理器自動生成cf文件

 

 

修改/etc/mail/sendmail.mc文件以下的部分:
注意:mc中的注視是 dnl開頭,以dnl結尾,啓用一條配置,只需刪除前面的dnl 字符串並且前面不要留空格。

 

 

DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl //讓服務器監視所有過來的ip地址

 

TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
這兩行開啓smtp驗證。

 

LOCAL_DOMAIN(`xxx.com')dnl //配置本地域名

 

其他默認即可,然後在/etc/mail/下執行命令:
m4 sendmail.mc >sendmail.cf
此時如果不做其他配置,sendmail便可以正常發送郵件。

 

B.安裝配置dovecot

修改/etc/dovecot.conf
Protocols = imap imaps pop3 pop3s

 

啓用dovecot
Service dovecot restart
dovecot 自啓動。
Chkconfig dovecot on

 

配置pop3的驗證
進入目錄cd /etc/pki/tls/certs/
Make dovecot.pem
輸入密鑰相關信息

 

編輯/etc/dovecot.conf
加入一下兩行:
Ssl_certfile = /etc/pki/dovecot/certs/dovecot.pem
Ssl_key_file = /etc/pki/dovecot/certs/dovecot.pem

 

 

 

 

 

 

C.安裝配置openwebmail

 

安裝完畢後修改配置文件。
/var/www/cgi-bin/openwebmail/etc/dbm.conf
內容修改爲以下內容
db_ext    .db
dbmopen_ext   .db
dbmopen_haslock  yes

 

初始化openwebmail

 

在路徑/var/www/cgi-bin/openwebmail下使用命令
./openwebmail-tool.pl –init 來初始化。
最後會要求發送報告到開發者,以便於他能蒐集有多少機器在跑openwebmail
y即可

 

修改相關默認配置,編輯/var/www/cgi-bin/openwebmail/etc/openwebmail.conf文件。

 

default_language zh_cn gb2312             將預設語言改爲簡體中文。
default_iconset Cool 3D.Chinese.Simplified  將原有的English改爲Chinese.Simplified,顯示中文圖標。
Domainnames  xxx.com               更改爲自己定義的域名。
auth_module  auth_unix.pl             將用戶認證方式改爲使用/etc/passwd/etc/shadow文件。
接下來就可以用
http://mail.xxx.com/cgi-bin/openwebmail/openwebmail.pl就可以訪問到openwebmail

 

顯然用這種方式訪問顯得過於麻煩。
這裏做一個網頁的重定向。
/var/www/html目錄下新建一個網頁文件redircet.html
輸入如下內容:
<html>
<head><meta http-equiv="Refresh" content="0;URL=/cgi-bin/openwebmail/openwebmail.pl">
</head>
<body onload="window.open('/cgi-bin/openwebmail/openwebmail.pl','_top')">
</body>
</html>

 

保存退出即可
這時便可以用mail.xxx.com來直接訪問openwebmail了。

 

 

D.sendmail添加用戶

 

這裏的sendmail通過passwshadow文件驗證賬號和密碼,因此直接用系統命令創建用戶組和用戶即可。

 

首先創建用戶組:groupadd mailuser
再爲該組創建用戶:adduser –g mailuser –d /home/xxx –s /sbin/nologin xxx  //創建了一個屬於mailuser組的用戶,該用戶不能登錄系統。
Passwd xxx  //修改xxx用戶的密碼。

 

以上便創建了一個sendmail用戶,可以在openwebmail裏登錄,收發郵件。

 

 

 

以上便是sendmail+dovecot+openwebmail最簡單的安裝過程。
注意:以上操作在公網上順利完成。
接下來最複雜之處在於對sendmail的管理。加油!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章