陳欣
摘要:目前電子郵件服務(wù)器的操作平臺(tái)有Unix、Linux、Windows三種,其中基于Linux的Sendmail服務(wù)是應(yīng)用較為廣泛的服務(wù)器平臺(tái)。文章從Sendmail服務(wù)器的基礎(chǔ)配置著手,講述了如何配置出簡(jiǎn)單高效的電子郵件服務(wù)器。
關(guān)鍵詞:電子郵件;Sendmail;SMTP;POP3
0 引言
截至2015年2月,中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心(CNNIC)發(fā)布《第35次中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告》,我國(guó)的網(wǎng)民人數(shù)突破6.6億,網(wǎng)絡(luò)普及率接近50%,網(wǎng)民人均3.8個(gè)電子郵箱,每天使用電子郵件的網(wǎng)民占87%,每天使用手機(jī)查看郵件的網(wǎng)民占68%。由此可見(jiàn)作為Internet常用服務(wù)的電子郵件,在網(wǎng)絡(luò)用戶(hù)中有著廣泛的使用需求和用戶(hù)基礎(chǔ)。
電子郵件的使用離不開(kāi)郵件服務(wù)器,該服務(wù)器是為客戶(hù)提供郵件服務(wù)的電子郵件系統(tǒng),它包括電子郵件的程序、電子郵箱、電子郵件協(xié)議等。大中型企業(yè)可以建設(shè)自己的郵件服務(wù)器,根據(jù)自己的需要設(shè)置郵箱屬性、用戶(hù)權(quán)限、安全級(jí)別等,適應(yīng)企業(yè)自身發(fā)展的需求。
1 主流的電子郵件服務(wù)器
當(dāng)前的Linux平臺(tái)中,常見(jiàn)的電子郵件服務(wù)器包括Sendmail、Postifix和Qmail等。
1.1 Sendmail服務(wù)器
在全世界范圍內(nèi),無(wú)論是從使用的廣泛程度,還是從代碼的復(fù)雜程度來(lái)講,Sendmail都是一款非常優(yōu)秀的軟件。幾乎所有Linux的缺省配置中都內(nèi)置了這個(gè)軟件,只要設(shè)置好操作系統(tǒng),它就能運(yùn)轉(zhuǎn)起來(lái)。它是一個(gè)免費(fèi)軟件,可以支持?jǐn)?shù)千甚至更多的用戶(hù),而且占用的系統(tǒng)資源相當(dāng)少。Sendmail的系統(tǒng)結(jié)構(gòu)不適合較大的負(fù)載,對(duì)于高負(fù)載的郵件系統(tǒng),需要對(duì)Sendmail進(jìn)行復(fù)雜的調(diào)整。
1.2 Postfix服務(wù)器
基于IBM的GPL協(xié)議開(kāi)發(fā)的postfix是一款開(kāi)放源代碼的優(yōu)秀軟件,它是提供Sendmail替代品的一個(gè)嘗試。在Internet世界中,大部分的電子郵件都是通過(guò)sendmail來(lái)投遞的,該服務(wù)器每天投遞上億封郵件。Postfix試圖更快、更容易管理、更安全,同時(shí)還與sendmail保持足夠的兼容性。該軟件利用多層防護(hù)措施來(lái)保護(hù)本地系統(tǒng),它的速度比同類(lèi)的產(chǎn)品快3倍以上。
1.3 Qmail服務(wù)器
Omail是由Dan Bernstein開(kāi)發(fā)的郵件服務(wù)器軟件,它廣泛運(yùn)行于Linux/Unix系統(tǒng)中。該服務(wù)器將Mail處理過(guò)程分為多個(gè)過(guò)程,同時(shí)避免用管理員用戶(hù)運(yùn)行。該服務(wù)器支持直接投遞,保證了Email在投遞過(guò)程中不會(huì)丟失,同時(shí)支持新的更可靠的信箱格式Maiidir,保證運(yùn)行環(huán)境突然崩潰下信箱系統(tǒng)的穩(wěn)定性和安全性。
2 電子郵件系統(tǒng)的框架
2.1 電子郵件系統(tǒng)的組成
電子郵件服務(wù)是基于客戶(hù)/服務(wù)器模式的。一個(gè)完整的電子郵件系統(tǒng)由以下3部分組成:MTA,MUA,LDA。
郵件代理器(MTA)運(yùn)行在郵件服務(wù)器上,負(fù)責(zé)郵件的存儲(chǔ)和轉(zhuǎn)發(fā)。監(jiān)視用戶(hù)代理的請(qǐng)求,根據(jù)電子郵件的目標(biāo)地址找出對(duì)應(yīng)的郵件服務(wù)器,將信件在服務(wù)器之間傳輸并且將接收到的郵件進(jìn)行緩沖。在linux下的MTA程序有:sendmail,qmail,postifix等。
郵件用戶(hù)代理(MUA)是一個(gè)郵件系統(tǒng)的客戶(hù)端程序,它提供了閱讀、發(fā)送和接受電子郵件的用戶(hù)接口。最常用的有:Windows下的outlook,foxmail等,linux下的mail,MozilaMail,pine等。
本地投遞代理(LDA)是當(dāng)MTA將電子郵件投遞到郵件接收者的郵件賬號(hào)所在的服務(wù)器后,由LDA負(fù)責(zé)將電子郵件投遞到接收者的具體郵箱中。
2.2 電子郵件服務(wù)的協(xié)議
SMTP,POP3,IMAP協(xié)議是目前電子郵件服務(wù)器使用的主要協(xié)議。
2.1.1 SMTP協(xié)議
SMTP協(xié)議是Internet中首要的傳輸協(xié)議,默認(rèn)的端口是TCP的25端口。該協(xié)議也叫簡(jiǎn)單郵件傳送協(xié)議,它負(fù)責(zé)把電子郵件從發(fā)件人的郵件服務(wù)器中發(fā)送到收件人的電子郵件服務(wù)器中。
2.2.2 POP3協(xié)議
POP3協(xié)議也叫郵局協(xié)議,它主要用來(lái)接收電子郵件。默認(rèn)的端口是TCP的110端口。它負(fù)責(zé)控制接收郵件的客戶(hù)機(jī)和電子郵件存儲(chǔ)服務(wù)器間的互連。
2.2.3 IMAP協(xié)議
IMAP協(xié)議是通過(guò)遠(yuǎn)程主機(jī)管理電子郵件的協(xié)議,默認(rèn)的端口是TCP的143端口。該協(xié)議使得收件^在自己的主機(jī)上能夠創(chuàng)建多個(gè)存放郵件的文件夾,以及在文件夾之間能夠互相轉(zhuǎn)移郵件。
3 配置Sendmail服務(wù)和Dovecot服務(wù)
RHEL5中使用最多的就是Sendmail服務(wù)器。在RHEL5系統(tǒng)中,配置電子郵件服務(wù)器之前,需要在防火墻中打開(kāi)Sendmail服務(wù)的端口,可以在系統(tǒng)設(shè)置的安全級(jí)別中開(kāi)啟25號(hào)端口,或者使用防火墻開(kāi)啟該端口。然后配置Sendmail服務(wù)和Dovecot服務(wù)。
3.1 Sendmail服務(wù)器的安裝和啟動(dòng)
配置sendmail服務(wù)器需要安裝如下軟件包:
安裝主程序包#rpm-ivh sendmail-8.13.8-2.el5.i386.rpm
安裝宏文件#rpm-ivh sendmail-ef 8.13.8-2.el5.i386.rpm
安裝開(kāi)發(fā)工具包#rpm -i vh sendmaildevel-8.13.8-2.e15.i386.rpm
安裝說(shuō)明文檔#rpm -ivh sendmail-doe-8.13.8-2.e15.i386.rpm
安裝宏處理過(guò)慮軟件包#rpm -ivh m4-1.4.5-3.e15.1.i386.rpm
安裝郵件接收軟件包
#rpm -ivh dovecot-1.01.2.rc15.e15.i386.rpm
Sendmail服務(wù)器開(kāi)啟:#service sendmail start
Sendmail服務(wù)器關(guān)閉:#service sendmail stop
3.2 Sendmail服務(wù)器的基本配置
服務(wù)器的主配置文件/etc/mail/Sendmail.cf,該文件的配置方法較復(fù)雜,所以可以先配置較簡(jiǎn)單的sendmail.mc文件,配置完成后通過(guò)M4命令生成sendmail.cf文件。
(1)更改偵聽(tīng)范圍,在DAEMON_OPTIONS語(yǔ)句中,原有的語(yǔ)句“Addr=127.0.0.1”僅允許服務(wù)器接收本機(jī)發(fā)送的郵件,服務(wù)器需要接收因特網(wǎng)的所有合法郵件,所以在這里更改偵聽(tīng)范圍為“Addr=0.0.0.0”如圖l所示。(2)更改郵件服務(wù)器的本地域名,在LOCAL_DOMAIN語(yǔ)句中,原有語(yǔ)句(localhost.loealdomain)默認(rèn)的域名是本地主機(jī)名,服務(wù)器在因特網(wǎng)中需要合法的域名,所以在這里更改域名為“wtcmail.eom”如圖2所示。(3)更改默認(rèn)郵件的大小,以字節(jié)計(jì)算,在define(、UUCP_MAILER_MAX','2000000')dnl語(yǔ)句中2000000為默認(rèn)郵件的大小,可以根據(jù)需要修改,如設(shè)置為5000000。(4)保存該配置文件,使用命令m4 sendmail.mc>sendmail.cf在服務(wù)器配置目錄中生成sendmail.cf主配置文件。重啟該服務(wù)器使新的配置文件生效。
3.3 配置POP3和IMAP服務(wù)器
電子郵件服務(wù)器的配置除了能夠正常發(fā)送郵件外,還要能夠接受郵件,所以還需要配置dovecot程序。
(1)在/etc/xinet d.d/imap配置文件中,將“disable=yes”更改為“disable=no”,啟動(dòng)imap服務(wù)。
(2)在/etc/xinet d.d/ipop3配置文件中,將“disable=yes”更改為“disable=no”,啟動(dòng)ipop3服務(wù)。
(3)使用命令service dovecot start啟動(dòng)doveeot服務(wù)。
4 測(cè)試服務(wù)器端口,添加郵件測(cè)試用戶(hù)
4.1 測(cè)試服務(wù)器端口運(yùn)行情況
使用命令netstat驗(yàn)證tcp協(xié)議25端口、110端口、143端口的開(kāi)啟情況,開(kāi)啟情況正常則服務(wù)器可以正常使用如圖3所示。
4.2 添加郵件服務(wù)器的客戶(hù)端
(1)使用useradd命令為系統(tǒng)添加cx01和cx02測(cè)試用戶(hù),使用passwd命令為2個(gè)測(cè)試用戶(hù)分別設(shè)置訪問(wèn)密碼。(2)查看/vat/log/maillog發(fā)送日志,該文件記錄了每一封電子郵件的發(fā)送情況,它可以查看用戶(hù)發(fā)送郵件的源系統(tǒng)和目標(biāo)系統(tǒng)。(3)查看/etc/mail文件,該文件保存了用戶(hù)收發(fā)的郵件。
5 Linux客戶(hù)端測(cè)試郵件服務(wù)器
unuxg-p端可以使用mail命令完成電子郵件的發(fā)送和接收,
#mail-s"Welcome"cx01@wtcmail.com
#how are you.
#welcome to us
Mail-s后面的是電子郵件的主題,郵件的接收人是cx01@wtcmail.com,輸完后回車(chē)即可輸入郵件的正文,使用CTRL+D鍵結(jié)束正文的輸入。此時(shí)電腦提示輸入郵件的抄送地址,輸入完成后即可完成此次電子郵件的發(fā)送。cx01用戶(hù)接收到的郵件會(huì)保存在/vat/spool/mail/cx01中,cx01用戶(hù)使用mail命令即可查看收到的電子郵件,系統(tǒng)會(huì)顯示登錄用戶(hù)的前20封郵件。