Postfix 3.6.0 郵件服務器發布

經過一年的開發,Postfix 郵件伺服器的一個新的穩定分支發布了 - 3.6.0。同時,它宣布結束對 3.2 年初發布的 Postfix 2017 分支的支援。 Postfix 是罕見的同時兼具高安全性、可靠性和效能的專案之一,這要歸功於深思熟慮的架構以及相當嚴格的程式碼設計和修補程式審核策略。此專案代碼根據 EPL 2.0(Eclipse 公共授權)和 IPL 1.0(IBM 公共授權)分發。

根據 600 月對約 33.66 萬個郵件伺服器的自動調查,Postfix 在 34.29%(一年前為 59.14%)的郵件伺服器上使用,Exim 的份額為 57.77%(3.6%),Sendmail - 3.83%(2.02%) %)、MailEnable - 2.12% (0.60%)、MDaemon - 0.77% (0.32%)、Microsoft Exchange - 0.47% (XNUMX%)。

主要創新:

  • 由於用於 Postfix 元件之間互動的內部協定發生變化,因此在更新之前需要使用「postfix stop」命令停止郵件伺服器。否則,與pickup、qmgr、verify、tlsproxy和postscreen進程互動時可能會發生故障,這可能會導致發送電子郵件延遲,直到Postfix重新啟動。
  • 被一些社區成員視為種族歧視的“白人”和“黑人”一詞已被清除。現在應該使用“白名單”和“黑名單”,而不是“白名單”和“黑名單”(例如,參數 postscreen_allowlist_interfaces、postscreen_denylist_action 和 postscreen_dnsbl_allowlist_threshold)。這些變更會影響文件、postscreen 進程的設定(內建防火牆)以及日誌中資訊的反映。 postfix/postscreen[pid]: ALLOWLIST VETO [位址]:連接埠 postfix/postscreen[pid]: ALLOWLISTED [位址]:port postfix/postscreen[pid]: DENYLISTED [位址]:port

    為了保留日誌中的先前術語,提供了「respectful_logging = no」參數,該參數應在 main.cf 中的「compatibility_level = 3.6」之前指定。保留了對舊螢幕後設定名稱的支持,以實現向後相容性。此外,設定檔“master.cf”目前保持不變。

  • 在「compatibility_level = 3.6」模式下,預設切換為使用SHA256雜湊函數而不是MD5。如果您在compatibility_level參數中設定了早期版本,則繼續使用MD5,但對於與使用未明確定義演算法的雜湊相關的設置,將在日誌中顯示警告。已停止支援 Diffie-Hellman 金鑰交換協定的匯出版本(現在忽略 tlsproxy_tls_dh512_param_file 參數的值)。
  • 簡化了與在 master.cf 中指定不正確的處理程序相關的問題的診斷。為了偵測此類錯誤,每個後端服務(包括 postdrop)現在都會在開始通訊之前通告協定名稱,每個用戶端進程(包括 sendmail)都會檢查通告的協定名稱是否與支援的變體相符。
  • 新增了新的映射類型“local_login_sender_maps”,用於靈活控制發件人信封地址(在 SMTP 會話期間在“MAIL FROM”命令中提供)到 sendmail 和 postdrop 進程的分配。例如,要允許本機使用者(root 和 postfix 除外)使用 UID 綁定到名稱來僅指定其在 sendmail 中的登入名,可以使用下列設定: /etc/postfix/main.cf: local_login_sender_maps = inline :{ { root = *} , { postfix = * } }, pcre:/etc/postfix/login_senders /etc/postfix/login_senders: # 允許指定登入名稱和login@domain 形式。 /(.+)/ $1 $1…@example.com
  • 新增並預設啟用“smtpd_relay_before_recipient_restrictions=yes”設置,其中 SMTP 伺服器將在 smtpd_recipient_restrictions 之前檢查 smtpd_relay_restrictions,而不是像以前一樣反之亦然。
  • 新增了參數“smtpd_sasl_mechanism_list”,預設為“!external, static:rest”,以防止在 SASL 後端聲稱支援“EXTERNAL”模式(Postfix 不支援)的情況下出現混淆錯誤。
  • 在 DNS 中解析名稱時,預設啟用支援多執行緒(執行緒安全性)的新 API。要使用舊 API 進行構建,您應該在構建時指定“make makefiles CCARGS=”-DNO_RES_NCALLS…”。
  • 新增了「enable_threaded_bounces = yes」模式,以相同的討論 ID 取代有關傳遞問題、延遲傳遞或傳遞確認的通知(該通知將由郵件用戶端在同一線程中與其他通訊訊息一起顯示)。
  • 預設情況下,/etc/services 系統資料庫不再用於確定 SMTP 和 LMTP 的 TCP 連接埠號碼。相反,連接埠號碼是透過known_tcp_ports 參數配置的(預設lmtp=24、smtp=25、smtps=submissions=465、submission=587)。如果known_tcp_ports 中缺少某些服務,則繼續使用/etc/services。
  • 相容性等級(「compatibility_level」)已提升至「3.6」(此參數過去已更改兩次,除3.6外支援的值為0(預設)、1和2)。從現在開始,「compatibility_level」將變更為發生違反相容性的變更的版本號碼。為了檢查相容性級別,main.cf 和 master.cf 中新增了單獨的比較運算符,例如「<=level」和「<level」(標準比較運算子不合適,因為它們會認為 3.10 小於 3.9)。

來源: opennet.ru

添加評論