Linux 郵件系統(tǒng)的組成
在 Linux 系統(tǒng)的自動化管理中,利用腳本自動發(fā)送郵件的功能對系統(tǒng)監(jiān)控的工作來說是非常重要的。系統(tǒng)管理人員可以利用 cron 或者 RMC 來創(chuàng)建監(jiān)控腳本,一旦觸發(fā)條件被滿足,操作系統(tǒng)就會自動創(chuàng)建電子郵件,將相關(guān)的狀態(tài)信息發(fā)送到指定的郵箱。通過電子郵件系統(tǒng),系統(tǒng)管理人員就能夠及時(shí)得獲取被管理系統(tǒng)的狀態(tài),進(jìn)而采取相應(yīng)的措施。這種方式可以顯著地節(jié)省系統(tǒng)管理人員的工作強(qiáng)度,并能夠提高系統(tǒng)的可維護(hù)性。本文主要講述的是Linux 郵件系統(tǒng)的組成。
在傳統(tǒng)的Linux 系統(tǒng)中,電子郵件系統(tǒng)的主要組成部分包括郵件用戶代理 (MUA -- mail user agent)、郵件傳輸代理(MTA -- mail transfer agent)、郵件提交代理 (MSA -- mail submission agent)、郵件投遞代理 (MDA -- mail delivery agent) 和郵件訪問代理 (MAA -- mail access agent)。在日常工作中,系統(tǒng)管理人員經(jīng)常接觸的主要有郵件用戶代理 (MUA) 和郵件傳輸代理 (MTA)。在 AIX 系統(tǒng)中,一個(gè)典型的郵件系統(tǒng)如圖 1 所示。
圖 1. 郵件系統(tǒng)示意圖
郵件用戶代理(MUA)是一個(gè)用來讀寫 mail 的程序,實(shí)際上就是郵件系統(tǒng)的客戶端程序。它提供了閱讀,發(fā)送和接受電子郵件的用戶接口。最常用的郵件用戶代理有 mutt,mail,elm,pine,它們都是隨基本系統(tǒng)安裝的 簡單郵件應(yīng)用程序。
郵件傳輸代理(MTA)是一個(gè)在兩個(gè)主機(jī)之間或者本地同一主機(jī)內(nèi)傳送郵件的程序,它負(fù)責(zé)郵件的存儲和轉(zhuǎn)發(fā),并決定傳送郵件到目的地的路線。UNIX/Linux 系統(tǒng)的標(biāo)準(zhǔn) MTA 是 sendmail,其他的 MTA 還有 qmail, exim 和微軟的 Exchange。MTA 會監(jiān)視用戶代理的請求,根據(jù)電子郵件的目標(biāo)地址找出對應(yīng)的郵件服務(wù)器,在服務(wù)器之間傳輸郵件并將接收到的郵件進(jìn)行緩沖。
郵件投遞代理(MDA)通常被 MTA 用來投遞郵件到接收者的郵箱中。它能夠從 MTA 接收郵件,并根據(jù)指定的規(guī)則來進(jìn)行本地投遞;它可以把郵件投遞到本地用戶、郵件列表、文件或者應(yīng)用程序。UNIX/Linux 系統(tǒng)中常用的 MDA 包括 maildrop、procmail、postfix 和 delivermail 等。Postfix 用一個(gè)或多個(gè) MDA 來遞送郵件 , procmail 是另外一個(gè)有名的 MDA.
郵件提交代理(MSA)負(fù)責(zé)消息發(fā)送之前的所有必須完成的準(zhǔn)備工作和錯(cuò)誤檢測。MSA 就如同在 MUA 和 MTA 之間的一個(gè)頭腦清醒的檢測人員,它會對所有的主機(jī)名和從 MUA 得到的信息頭等信息進(jìn)行檢測。
MAA 郵件訪問代理(MAA)將用戶連接到郵件系統(tǒng),并通過 POP 或 IMAP 協(xié)議來收取郵件。Linux 系統(tǒng)中,常用的 MAA 有 UW-IMAP、Cyrus-IMAP、COURIER-IMAP 等;當(dāng)郵件向目的地址進(jìn)行傳輸時(shí),一旦源地址和目的地址都不是本地系統(tǒng),那么本地系統(tǒng)就會作為郵件的中繼。
對于大多數(shù)郵件用戶來說,利用郵件客戶端來接收、查看和發(fā)送電子郵件是最常用的功能。接收和查看郵件比較簡單,但是電子郵件的發(fā)送則相對復(fù)雜。在下面的章節(jié)里面,本文將根據(jù)不同的操作系統(tǒng)來具體介紹如何配置郵件服務(wù)器。
【編輯推薦】