成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Sendmail Qmail Postfix 大比拼

運維 系統運維
sendmail是最早、最古老的MTA之一,比起后起之秀來說Qmail和Postfix來說,sendmail到底有哪些長處和不足呢?本文主要介紹的是sendmail、Qmail、Postfix的比較。從他們的歷史、技術、等方面來分析。

一、MTAs的發展歷史

  Sendmail

  毫無疑問,sendmail是最古老的MTA之一。它比qmail和postfix要古老得多。最早它誕生的時候,Internet還沒有被標準化,當時主機之間使用的是UUCP技術來交換郵件。

  它被設計得比較靈活,便于配置和運行于各種類型的機器。

  Qmail

  qmail 是新生一代的MTA代表,它以速度快、體積小、易配置安裝等特性而著稱。作者D. J. Bernstein(djb)是一個數學教授,富有傳奇色彩。djb于1995年開發qmail,1996年發布0.70版,并使用了多種當時比較先進的技術,包括Maildir,與sendmail單個binary不同的模塊化設計,權限分離,以及使用了大量由djb編寫的配套工具,如 daemontools,ucsip-tcp等。

  qmail迅速成為了Internet上最有名的MTA,使用者眾。

  Postfix

  Postfix作者是Wietse Venema,一名著名的安全專家。最早postfix起源于1996年,當時venema 在美國IBM研究中心負責研究更安全的郵件系統,當時稱為Vmailer。后因為商標問題于1998年11月正式更名為Postfix

  Postfix 以替代sendmail為目的,并提供了一個更安全、更高性能的靈活的體系。它同樣也采用模塊化設計,使用了大量優秀的技術,以達到安全的目的。由于作者的設計理念獨到,經過7,8年時間,Postfix現今已發展成為功能非常豐富,擴展性和安全性強的優秀MTA。

二、概括的比較

  以下的分析主要基于我在CASA上發的一個小文章,對sendmail/qmail/postfix做了一個概括性的比較。

  sendmail

  sendmai功能非常強大,很多先進功能在sendmail上都最先有實現。sendmail里的Milter技術是一個非常好的框架,目前postfix及qmail仍然沒有官方發布的方案比milter要好。

  但 sendmail也有典型的歷史問題,只有一個binary程序,需要sid權限,m4配置文件復雜難懂。這些是是阻礙sendmail更好發展的一些客觀問題。客觀來說,調教得好的sendmail,其性能也是相當不俗的,據一個國外的Unix雜志稱,在solaris+內存文件系統+帶電池的raid 系統下,sendmail能達到驚人的287封/秒的注入速度!

  目前sendmail比較適合那些老用戶,因為他們習慣了sendmail的應用環境和配置。

  qmail

  qmail 體積非常小巧,source的gz包大概只有260多K,是三大MTA中最小的!模塊化設計,避免了sid問題,基本功能齊全。配置相對sendmail 而言,簡單了很多,而且用戶非常廣泛。而且補丁和插件非常多,例如著名的vpopmail,netqmail,以及qmail-ldap等。

  但qmail有幾個問題,一是djb已經5,6年沒有繼續開發了,補丁的良莠不齊及版本依賴是非常麻煩的事,這對初學者極為不利。二是功能擴充需要補丁來完成,擴展能力不足。

  總體上qmail依然是個非常不錯的選擇。對于希望了解mta原理,或希望修改mta代碼的愛好者,qmail是值得推薦的。對于需要建立中小型郵件系統的用戶也同樣適合。而對于需要豐富功能卻不想面對補丁困難,或者需要建立大型的系統,qmail不太合適,需要更豐富的經驗和技術。

  postfix

  postfix 如今已經獨樹一幟,流水線、模塊化的設計,兼顧了效率和功能。靈活的配置和擴展,使得配置postfix變得富有趣味。其主要的特點是速度快、穩定,而且配置/功能非常強大,并和sendmail類似,提供了與外部程序對接的API/protocol。尤其是配置部分,可以說是一掃qmail和 sendmail的各自缺點。

  但postfix管理及配置的入門依然需要一定的工夫,必須仔細閱讀官方文檔。postfix另一個優勢是至今依然保持活躍的開發工作,而且穩步發展,適合高流量大負載的系統,擴充能力較強。

三、大規模應用例子

  國內若干個大型email ISP(如163.net/tom.com/163.com及sohu等)過去都使用qmail,后來全部更換成postfix。

  新浪使用qmail,yahoo使用qmail。但這些已經不是普通的qmail了。

四、技術層面的分析

  這里僅探討一些典型的技術特點,從這些特點可以看出每個MTA設計的異同,主要討論的焦點是qmail和postfix。

  磁盤I/O

  從隊列文件的讀寫來看,qmail處理每一封郵件時,都至少需要建立3個文件,mess, intd, info等。而Postfix使用的是單隊列文件設計,因此磁盤I/O的開銷要比qmail小得多,如果僅僅從這個方面考慮,postfix的隊列是 qmail的2-4倍那么快。

  從我過去的一個qmail vs postfix對比測試中,也可以發現這個問題。

  數據同步

  如果從MTA對待操作系統的文件是否安全寫入磁盤的策略來看,qmail和postfix也是不同的。Postfix使用的是隨機寫,并且需要寫入完成并安全同步到磁盤后才算完成。而qmail的寫入則是即刻執行的,因此它將等待數據安全寫入磁盤后才返回。對于高流量的系統而言,這將導致性能問題。

  此外,Postfix的隊列對于FreeBSD的softupdate是安全的,而qmail則是不安全的,qmail作者明確警告用戶不要使用softupdate,除非是有磁盤后寫電池。

  擴充能力

  sendmail有著非常好的擴充能力,支持眾多的特性,功能可謂豪華。包括頻率控制到集群支持應有盡有。而milter API則更加使sendmail的靈活性發揮至極,通過milter,用戶可以對郵件幾乎所有的參數進行控制!但是在存儲方面,由于只支持mbox,會有一定的問題。

  qmail在系統容量擴展上有著獨到的設計,配合qmail-ldap補丁,可以充分利用qmqp及分布存儲的優勢。現今已有各式各樣的qmail擴展方案,最著名的是qmail-ldap。但qmail缺乏類似milter的設計,功能擴展需要各種補丁,而補丁的設計水平參差不齊,配置能力有限。實施起來相對是最復雜的。

  Postfix 同樣有著非常好的容量擴充能力,利用LMTP或transport的/alias的方法,可以分布式的存儲郵件,擴充容量。同時postfix的功能擴展也非常強,通過靈活的配置即可實現復雜的功能,這是其最突出的優點之一,是qmail望塵莫及的。此外,類似sendmail的 milter,postfix擁有content_filter和policy 兩個與外部程序/應用對接的接口,但不如milter那樣功能集中和靈活,也沒有完整實現qmail的qmqp及類似qmail-ldap的機制。

  可配置性

  sendmail 使用m4語法,單一的主配置文件(sendmail.cf)是三個mta中最難使用的,但是如果熟悉使用的話卻能實現復雜的功能。

  qmail使用的是大量小配置文本,格式最簡單,每個配置一個文件,存放在/var/qmail/control目錄里。

  postfix也使用單一的主配置文件(main.cf),同時還有對應master主服務進程的配置文件master.cf,但使用的是簡明易懂的key = value 格式。

  總體而言,qmail的配置文件較易管理(格式最簡單)但配置文件多(10個以上),而postfix的格式簡單只有2個配置文件,并配備強大的postconf工具,sendmail的配置文件最復雜。

  數據庫支持

  sendmail通過一些插件/補丁,可以支持mysql/pgsql/oracle等,ldap及小型的dbm/cdb等數據存儲格式。

  qmail默認只支持cdb,需通過補丁才可支持ldap,mysql,pgsql及oracle等。

  postfix可以支持的數據庫應該是最多的,默認就包括了mysql/pgsql/ldap及dbm/cdb和cidr/nis*/btree等一堆。還支持特殊的tcp_table(僅在snapshot里支持)

  穩定性/負載能力

  sendmail, qmail, postfix都比較穩定。在高負載下,配置不佳或沒有打足夠補丁的qmail容易被DOS攻擊打跨,而postfix在遇到超過配置的限制時會降低處理能力,但系統依然有一定資源可用。

【編輯推薦】

  1. Sendmail配置策略
  2. Linux 下sendmail的配置
  3. Thunderbird的安裝方法
  4. Sendmail配置筆記之啟動服務器
  5. sendmail的安裝方法
  6. Postfix的配置
責任編輯:zhaolei 來源: 網絡轉載
相關推薦

2010-03-18 14:54:46

主流無線技術

2010-07-14 13:38:51

Perl開發工具

2020-08-04 17:06:40

Merging Rebasing Git

2010-09-08 15:41:28

SIP協議棧

2010-05-28 11:09:51

SVN功能

2014-01-07 17:08:02

Java開源框架

2010-08-25 16:12:34

職場

2023-05-26 15:53:48

MidjourneyAI圖像

2011-11-08 10:29:44

2017-09-10 14:29:03

眼力

2021-03-15 21:07:17

IT行業薪酬薪水

2018-10-25 14:08:07

KubernetesGoogle

2019-03-29 08:25:21

JSONXML前端

2011-04-01 09:18:01

MRTGCactiZabbix

2010-04-21 12:54:46

Unix內核

2012-08-15 09:26:54

虛擬化

2019-08-27 09:00:00

敏捷開發開發方法項目

2013-04-22 14:21:13

WP、Android、

2009-12-01 08:47:41

2009-10-13 14:46:00

思科認證
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费观看av| 麻豆精品一区二区三区在线观看 | 国产精品一区二区久久久久 | 国产欧美日韩精品一区二区三区 | 天天影视网天天综合色在线播放 | 亚洲日韩中文字幕一区 | 国产视频2021 | 欧美综合色 | 九九久久精品视频 | 国产激情视频在线观看 | 91一区二区三区 | 天天想天天干 | av成人在线观看 | 午夜一级黄色片 | 精品一区二区三区四区在线 | 久久婷婷麻豆国产91天堂 | 亚洲视频 欧美视频 | 精品99久久久久久 | 亚洲444kkkk在线观看最新 | 操亚洲 | 午夜理伦三级理论三级在线观看 | 欧美人妖网站 | 国产一区二区激情视频 | 99精品久久久久久 | 亚洲国产欧美一区二区三区久久 | 日韩精品一区二区三区在线观看 | 日本小电影网站 | 日韩av免费在线观看 | 欧美精品1区 | 在线视频成人 | 欧美一二区 | aaaaaaa片毛片免费观看 | 日韩欧美字幕 | 三级免费毛片 | 能看的av网站 | 久久久久久久久久久久久久av | 国产激情一区二区三区 | 亚洲国产片 | 人碰人操 | 亚洲精品片| 6080yy精品一区二区三区 |