導讀 | 在互聯網上,郵件客戶端向郵件服務器發送郵件然后將消息路由到正確的目的地(其他客戶),其中郵件服務器使用的一個網絡應用程序稱為郵件傳輸代理(MTA)。 |
最好的Linux郵件傳輸代理(MTAs)
MTA是一個應用程序,該應用程序路由和傳輸電子郵件從一個節點到另一個網絡,它使用一個被稱為SMTP(簡單郵件傳輸協議)的協議來執行其任務。
在網絡節點上,存在一個電子郵件客戶端,用於發送和接收消息的郵件服務器,電子郵件客戶機也使得使用SMTP協議的,但未必是MTA。
MTA被安裝在郵件服務器上,和一些電子郵件客戶端中,如(Mozilla Thunderbird)雷鳥,(Evolution),微軟的Outlook和Apple mail都安裝了郵件客戶端。
在本文中,我們將介紹幾個Linux下常用的郵件服務器,它們都使用了MTA。
Sendmail 現在被稱為 proofpoint(after Proofpoint, Inc acquired Sendmail, Inc)是迄今為止在Linux服務器平台上最受歡迎和最古老的 MTA。Sendmail 相對於現在一些MTAs有很多限制。由於其復雜的配置步驟和要求,和薄弱的安全機制,許多新的 MTA 開始替代 Sendmail。
sendmail安裝
#檢查軟件是否安裝
rpm -qa | egrep "sendmail|dovecot|cyrus"
#安裝郵件服務器
yum -y install sendmail sendmail-cf
#安裝pop3/imap服務
yum -y install dovecot
#安裝用戶認證軟件
yum -y install cyrus-sasl cryus-sasl-md5 cryus-sasl-plain cyrus-sasl-lib
官方網站: http://www.sendmail.com
Postfix 是一個跨平台的、流行的MTA,被當時在IBM研究部門的Wietse Zweitze Venema開發和設計用於公司的郵件服務器。
它開發主要目的為了替代公眾的,流行的Sendmail MTA。 Postfix運行在Linux,Mac OSX,Solaris和其他幾個類Unix操作系統上。
它借用了很多Sendmail的外在屬性,但它有一個完全不同內部操作。此外,它的優勢在於方便配置和安全機制的功能性模塊,並具有以下主要特點:
- 垃圾郵件控制
- 支持多種協議Supports multiple protocols
- 支持數據庫
- 支持Mailbox
- 支持地址操作,更多功能參考官方文檔
postfix安裝
rpm -qa | egrep “postfix|mailx“
yum -y install mailx postfix
service postfix start && chkconfig postfix on
官網地址:http://www.postfix.org
Exim 是一個免費的MTA,開發用於類Unix操作系統,如Linux、Mac OSX,Solaris等其他操作系統。Exim提供了很大的靈活性,用於網絡上的郵件路由,同時包括良好的機制和接受郵件監控的設置。
其顯着特點包括但不限於:
- 不支持POP和IMAP 協議
- 支持的協議,如RFC2821 SMTP和RFC2033 LMTP電子郵件傳輸
- 配置其中包括訪問控制列表,內容掃描,加密,路由控制
- 優秀的文檔
- 它具有實用程序,如Lemonade是各種各樣的SMTP和IMAP擴展
Exim安裝
#安裝最新的epel源
rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-6.noarch.rpm
# 安裝exim
yum -y install exim-mysql mailx
service posftix stop && chkconfig postfix off
chkconfig exim on && service exim start
# 測試郵件
echo “this is test from exim” | mial -s “exim”
tailf /var/log/exim/mainlog
官方網站:http://www.exim.org/
Qmail 是另一種免費的,開源的,現代的Linux MTA,相比其他MTA,它簡單,可靠,高效,從而提供了廣泛的安全功能,安全的MTA包。
它很小但是功能豐富,一些特性包括:
- 運行在多種類Unix操作系統之上,如FreeBSD, Solaris, Mac OSX plus 等更多
- 安裝簡單快捷
- 自動配置每個主機
- 地址,文件和程序之間的分隔明確
- 全面支持地址組
- 讓每個用戶管理自己的郵件列表
- 支持一個簡單的方法來建立郵件列表
- 支持VERPs
- 支持自動防止郵件列表的循環
- 支持ezmlm的郵件列表管理器
#Qmail 安裝
wget http://infobase.ibase.com.hk/qmail/netqmail-1.06.tar.gz -p /usr/local/src
tar xpf netqmail-1.06.tar.gz && cd netqmail-1.06 && ./collate.sh
make setup check && ./config
更多Qmial安裝的詳細信息請移步到其官網wiki:http://lifewithqmail.org/LWQ-CN.html#download,文中不過多贅述
官方網站: http://www.qmail.org
Mutt 是一個基於類Unix操作系統,小而強大的電子郵件客戶端。
作為一個基於文本的電子郵件客戶端,它有一些令人振奮的功能,顯著特點包括:
- 郵件主題
- 支持IMAP和POP3協議
- 支持多個郵箱格式,如MBOX,MH,Maildir,MMDF
- 支持傳送狀態
- 多個郵件標記
- 支持PGP/MIME (RFC2015)
- 各種功能以支持郵件清單,其中包括列表回復
- 撰寫期間郵件頭的完全控制
- 安裝容易
- 活躍的社區開發
官方網站: http://www.mutt.org/
Alpine 是Linux的一個快速且易於使用的基於終端的電子郵件客戶端,它是基於Pine郵件系統。它非常適合初學者和電力用戶,用戶可以輕松地學習如何通過上下文相關幫助使用它。
重要的是,它可以通過Alpine命令進行高度定制。
# Alpine 安裝
wget ftp://ftp.cac.washington.edu/alpine/alpine.tar.gz
tar zxvf alpine.tar.gz && cd alpine && ./configure && make && make install
注:更多Apline安裝的詳細信息請參考:https://www.washington.edu/alpine/tech-notes/installation.html(自行翻牆)
官方網址:https://www.washington.edu/alpine/
總結
文中簡要的介紹了郵件是如何從郵件客戶端,通過網絡傳到郵件服務器上,並通過郵件路由發送到指定客戶端,更重要的是對MTA的工作方式有了一些了解,如果你需要搭建一台郵件服務器的話,上面幾個MTA是很好的選擇。