2016年11月5日 星期六

推薦-「Postfix郵件系統建置手冊」心得

 

推薦-「Postfix郵件系統建置手冊」心得

 

詳細介紹(點我)

 

 

 閱讀心得,心得感想,書評


內容簡介




  更簡單、更安全、更穩定



  Postfix的設定十分容易,管理人員上手的門檻不高,最重要的是,Postfix的運作非常穩定,幾乎沒有安全漏洞,因此,短短幾年的時間,Postfix便迅速普及,變成一個十分重要的郵件傳遞系統。



  史上最完整的Postfix中文參考書

  

  本書堪稱是目前最完整的Postfix中文參考資料,內容完整涵蓋了安裝、架設、管理與維護。無論您是單純地想要自架一個郵件伺服器,或者是需要架設企業用的郵件伺服器、多網域郵件系統,甚至是複雜的系統整合,均可從本書中找到指引。



  本書精采內容包括:

  .認識SMTP簡易郵件傳輸協定

  .瞭解網際網路信件格式

  .加入Google郵件代管服務的設定方法

  .內容過濾與垃圾郵件防堵

  .虛擬網域/多網域郵件系統的架設方法

  .Postfix與資料庫的整合

  .除錯、郵件佇列瓶頸分析,效能調校



 

作者介紹




作者簡介



臥龍小三




  台灣大學數學系畢。擁有豐富的網管經驗,歷任:數學教師、導師、資訊組長、教網中心程式研發組組長、教網中心主任等工作。



  擁有以下身分:

  ■ BBS站資深站長。

  ■ 自由軟體技術交流網站長。

  ■ B2D中文Linux計劃創立者。

  ■ B2D Server開發者。



 

目錄




第1章|Postfix簡介

第2章|Postfix快速架設、立即上手

第3章|Postfix基本設定管理:main.cf

第4章|Postfix的服務設定檔:master.cf

第5章|郵件系統基礎概念

第6章|MTA和DNS的關係

第7章|Postfix的發展理念和系統架構

第8章|改寫郵件位址

第9章|郵件轉遞與收信控制

第10章|內容過濾與垃圾郵件控制

第11章|Milter過濾機制與寄件者驗證

第12章|佇列設定管理

第13章|本機投遞作業和信箱格式設定管理

第14章|下載信包系統

第15章|建立Postfix的主機憑證和金鑰

第16章|SMTP授權認證

第17章|架設虛擬網域/多網域郵件系統

第18章|Postfix和資料庫設定管理

第19章|Postfix和LDAP設定管理

第20章|Postfix瓶頸分析與效能調整






 




作者序



  雲中誰寄綿書來



  1971 年,第一封網路郵件透過 ARPANET 在兩台並排的機器之間進行傳遞,從此,開啟了人類運用電子郵件互通訊息的序幕。



  隨著網際網路的發展,電子郵件越來越重要,也改變了人們工作的方式。現今,許多單位若沒有電子郵件,甚至不能運作。許多自由軟體專案,靠著電子郵件(稱為郵遞論壇)聯繫散佈在世界各地的開發者。這些開發者,雖未曾謀面,但卻能透過電子郵件互相溝通訊息、協同合作地開發專案。由於專案的開發速度非常快,吸引更多的使用者和開發者加入,形成龐大的社群(群聚效應),專案規模不但呈現暴炸性地成長,而且大部份都能獲得巨大的成功。這種「參與-回饋-成長」的開發模式,顛覆了以往由單一公司封閉地開發軟體的發展方式,不論就開發速度、軟體品質、使用人口數以及產出的經濟規模等等,都更勝於以往。最著名的例子便是 Linux。Linux 甚至在全世界帶起一股自由軟體的風潮,其影響力至今仍然沒有停歇。



  傳遞電子郵件最初使用的是擴展型的 FTP 協定,1982 年,RFC 821 提出了 SMTP(Simple Mail Transfer Protocol)做為傳遞電子郵件的標準協定。一直到今天,SMTP 仍然是傳遞電子郵件的重要設計基礎。



  多來年,不管網際網路如何發展,電子郵件仍然是殺手級的應用(想想看,若沒有 Gmail,Google 的市佔率會如何?),最主要的原因是,它背後支持的 SMTP 協定十分簡單;由於簡單,容易實作,應用自然廣泛。



  第一代祖父級的郵件系統,當推 Sendmail。Sendmail 的前身是 ARPANET 時代的 delivermail,作者是柏克萊大學的 Eric Allman。1983 年 Allman 改寫 delivermail,推出 Sendmail,附在 BSD 4.1c 中,這也是第一次採用 TCP/IP 的 BSD 版本。後來,Sendmail 變成大多數 UNIX-like 系統預設的郵件傳遞程式。



  Sendmail 的特色是,其功能相當具有彈性,能應付各種複雜的網路環境。



  不過,在 Sendmail 出現的年代,網路不大,大多數是學院和軍事單位,彼此是以善意和信任為基礎互相連接。也就是說,Sendmail 一開始並不是以安全為主要的設計考量(當時並沒有重視程式安全的氛圍)。1988 年 11 月,爆發了全世界第一起透過網際網路發動網虫攻擊的 Morris 事件,這隻由學生(Morris)所寫的網虫,利用 Sendmail 以及一些軟體的漏洞(finger/rsh/rexec),輕易地就重創了當時的網際網路。據估計,大約有 6000 部主機遭受到 Morris 網虫的連鎖入侵。



  這起事件,對後來產生了兩個重要的影響。其一,Morris 網虫讓美國國防部高級研究計劃署(DARPA)驚覺到:網際網路必須要有緊急反應資安事件的能力才行,於是,後來成立了 CERT Coordination Center(CERT/CC,網路危機處理協調中心)。其二,在那之後,許多人開始循著 Morris 網虫的攻擊模式,不斷地發掘和利用各種 Sendmail 潛藏的漏洞,對網路上的主機進行攻擊。於是 Sendmail 的開發者只好不斷地修補漏洞並增強功能(無法重新改寫架構)。不過,由於其架構一開始並不是以安全為設計考量,實在很難杜絕程式的漏洞,於是乎,Sendmail 就在其增強功能以及不斷地修補漏洞的交互作用下,變成今日這種非常複雜的樣子。1993 年,第一版 Sendmail 的聖經出版(書本封面圖是一隻倒掛的蝙蝠,俗稱蝙蝠書),2007 年,第四版的蝙蝠書竟厚達 1312 頁(筆者在 1998 年 3 月購得的第二版厚達 1021 頁)。研究 Sendmail 的發展歷程,我們不難發現:Sendmail 的長處正是其弱點所在。Sendmail 以單一的程式體來處理各種可能的郵件傳遞路徑,不但設定非常複雜,而且變得十分難以理解,因為它的設定檔的語法,主要是設計要給 Sendmail 主程式讀取的,而不是給人看的。許多郵件系統管理者,經常需要自訂郵件傳遞規則,但卻往往不得其門而入。就算買了書,研究了老半天,仍然不容易看懂,最後只能喟然長嘆,此真乃天書也。因此,一直以來,設計開發一套足以替代 Sendmail 的郵件傳遞系統,便成了許多有志之士的偉大夢想。



  第一個以安全為設計考量,而且能代替 Sendmail 的郵件傳遞程式是 qmail。1995 年,qmail 的作者 Daniel J. Bernstein 開始設計一個比 Sendmail 更安全的軟體。2007 年 11 月,qmail 改以 public domain 的授權方式推出,這十年間,作者曾懸賞 500 美金要頒給第一個發現 qmail 資安漏洞的人,後來更加碼到 1000 美金,但至今仍然無人領取,由此可見,qmail 在安全設計上的卓越之處。qmail 是繼 Sendmail 之後,第二個廣為流行的郵件傳遞程式。不過,qmail 和 Sendmail 已成為郵件系統不成文標準的運作方式並不完全一致。qmail 在設計上有許多創舉。例如:Maildir 格式、Wildcard 信箱、QMTP 和 QMQP 協定等等。在設計架構上,qmail 也和 Sendmail 單一執行體的設計模式截然不同,qmail 幾乎是徹底的模組化。各種主要的功能,不但是以模組的方式分開執行(模組之間互不信任),而且,新設計好的模組可以立刻代替舊的模組,並不會影響整體的功能和安全性,這實在是非常全安、優秀的設計;但可惜的是,美中不足的,qmail 的入門和使用並不容易。



  大約和 qmail 同時,1995 年,在劍橋大學服務的 Philip Hazel 開始設計 Exim (EXperimental Internet Mailer)。這是第二個能夠替代 Sendmail 的郵件傳遞程式。Exim 的前身是 Smail。雖然 Exim 的設計架構和 Sendmail 一樣,都是單一的程式體,但 Exim 發生資安漏洞的記錄卻很少。至今,著名的老牌子 Linux 套件---Debian,其預設的郵件傳遞程式便是 Exim。



  1998 年初,任職於 IBM Watson 研究中心的 Wietse Venema(著名的 TCP Wrapper/SATAN 軟體的作者)為 IBM 設計 Vmail(IBM Secure Mailer)。這原本是個半年期的計劃,後來(1998 年 11 月)改名為 Postfix。1999 年 6 月 27 日,Postfix 改用 IBM 自由軟體授權協議(IBM Public License v1.0)發行。由於 Postfix 繼續沿用 Sendmail 的特性(例如 aliases、.forward、sendmail、mbox),足以完全取代 Sendmail,而且,Postfix 的設定十分容易,管理人員上手的門檻不高,最重要的是,Postfix 採取模組的方式設計系統元件,運作非常穩定,幾乎沒有安全漏洞,因此,短短幾年的時間,Postfix 便迅速受到大多數人的歡迎,變成一個十分重要的郵件傳遞系統。可以說,當初極力發展足以替代 Sendmail 的夢想,至此,幾乎已完全實現(和 Sendmail 相容、設定簡單、注重安全、運作穩定)。2009 年 3 月 20 日,自由軟體基金會(The Free Software Foundation)把 2008 年年度自由軟體大獎頒給了 Wietse Venema,以表彰 Wietse Venema 在程式安全和 Postfix 方面的重大貢獻。



  1995 年之前,筆者第一次接觸到 Sendmail 時,對 Sendmail 如此複雜的設定十分驚訝,當時心想:「這是哪門子的怪東西,這是給人用的嗎?」,一直到 1996年底/1997年初,玩到 RedHat 4.0/4.1(當時是使用 Sendmail 8.8.4),才對 Sendmail 的架構和想法有點初步的認識。後來,無意中發現 Postfix,立刻找一部主機架設起來,對 Postfix 那種安裝容易、設定簡單的方式,驚為天人。從那時候開始,筆者便迷上了 Postfix,逢人便道 Postfix 的好。多年來,筆者一直想寫點關於 Postfix 的東西,剛好,出版社來信徵詢筆者是否想寫 Postfix 的書,筆者不揣淺陋,毫不猶豫,便一口答應下來(雖然明知這是件大工程,而個人能力實在有限!)。這便是本書的由來。



  筆者才疏學淺,純以興趣發端,若有錯誤之處,尚祈各位先進來信斧正。



OLS3 臥龍小三






沒有留言:

張貼留言