Postfix 中繼到 Office 365 - DNS 配置

Postfix 中繼到 Office 365 - DNS 配置

為了降低電子郵件被標記為垃圾郵件的可能性,我認為應在電子郵件伺服器上執行以下幾項操作:

  • 主機名稱解析為有效的 IP,例如mail.example.com1.1.1.1
  • 存在反向 DNS,例如1.1.1.1mail.example.com
  • 郵件伺服器發出“HELO”命令作為mail.example.com
  • 郵件伺服器有一 MX 記錄指向mail.example.com
  • 要包含的 SPF 記錄1.1.1.1作為授權發送伺服器
  • DMARC 和 DKIM 驗證。由郵件伺服器加密的DKIM簽章和公鑰可用於解密。

當 Postfix 伺服器中繼到 Office 365 時,您將如何設定 DNS?

SMTP 中繼已設定選項 3,請參考此文章)。我相信下面列出的內容僅適用於設定 SMTP 中繼而不是 SMTP 驗證(我相信使用 SMTP 驗證時,HELO 交換將在 Office 365 和收件者伺服器之間完成,因此這不適用)。

  • Postfix 伺服器應該解析為有效的 IP,例如mail.example.com1.1.1.1
  • 存在反向 DNS,例如1.1.1.1mail.example.com
    • 如果有多個網域和伺服器從相同 IP 發送數據,會發生什麼情況?如果伺服器使用對應的網域作為主機名,這不會是一個問題嗎?例如mail.abc-domain.commail.example.com是兩個使用相同公用 IP 位址的獨立伺服器。
    • 解決方案是否在所有伺服器上使用相同的主機名稱進行 HELO 交換,而不管伺服器中繼到哪個網域?或者,我們可以為每個網域設定兩個公用 IP。
  • Postfix 伺服器應發出「HELO」命令,如下所示mail.example.com
  • MX 設定為example.mail.protection.outlook.com為了example.com因為郵件正在傳遞到 Office 365。
  • SPF 記錄應包括兩者1.1.1.1spf.protection.outlook.com
    • 到 Office 365 的 SMTP 中繼似乎在 HELO 交換中包含 Postfix 伺服器的主機名稱和 IP,這意味著在 SPF 記錄中包含 Postfix 的公共 IP 非常重要。
    • Office 365 將代表傳送電子郵件example.com對於經過身份驗證的使用者(例如 Outlook 用戶),這就是原因spf.protection.outlook.comSPF 記錄中也需要。
    • example.com 已存在 PTR 記錄,該記錄指向 2.2.2.2 上的 Web 伺服器。 Web伺服器不需要指向自身的PTR記錄,所以我認為將PTR更改為Postfix伺服器是安全的。PTR 記錄還有哪些用例?
  • DMARC 和 DKIM 驗證。
    • 我認為當 Postfix 伺服器和普通使用者(Outlook 使用者)向 Office 365 提交電子郵件時,DKIM 簽章應該在 Office 365 中加密。它是否正確?

如前所述,我可以看到 Postfix 在電子郵件標頭中包含了主機名稱和 IP,如下所示。

Hop Delay   From    By  With    Time (UTC)  Blacklist
1   *   userid  mail.example.com        9/8/2023 6:38:37 AM 
2   1 Second    mail.example.com 59.154.1.42    SY4AUS01FT019.mail.protection.outlook.com 10.114.156.121    Microsoft SMTP Server   9/8/2023 6:38:38 AM Not blacklisted
3   1 Second    SY4AUS01FT019.eop-AUS01.prod.protection.outlook.com 2603:10c6:10:1f4:cafe::15   SY5PR01CA0071.outlook.office365.com 2603:10c6:10:1f4::9 Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384)    9/8/2023 6:38:39 AM Not blacklisted
4   0 seconds   SY5PR01CA0071.ausprd01.prod.outlook.com 2603:10c6:10:1f4::9 ME3PR01MB7048.ausprd01.prod.outlook.com 2603:10c6:220:16d::8    Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384)    9/8/2023 6:38:39 AM

在收到的電子郵件標頭中,我可以看到電子郵件標頭顯示將電子郵件中繼到 Office 365 時在 Postfix 伺服器上啟動 HELO 命令

Received-SPF: Pass (protection.outlook.com: domain of example.com designates
 1.1.1.1 as permitted sender) receiver=protection.outlook.com;
 client-ip=1.1.1.1; helo=mail.example.com; pr=C
Received: from mail.example.com (1.1.1.1) by
 SY4AUS01FT019.mail.protection.outlook.com (10.114.156.121) with Microsoft
 SMTP Server id 15.20.6768.30 via Frontend Transport; Fri, 8 Sep 2023 06:38:38
 +0000

相反,當透過 Outlook 透過 Office 365 傳送時,HELO 從 Office 365 開始

Received-SPF: Pass (protection.outlook.com: domain of example.com
 designates 40.107.108.68 as permitted sender)
 receiver=protection.outlook.com; client-ip=40.107.108.68;
 helo=AUS01-ME3-obe.outbound.protection.outlook.com; pr=C
Received: from AUS01-ME3-obe.outbound.protection.outlook.com (40.107.108.68)
 by ME3AUS01FT015.mail.protection.outlook.com (10.114.155.141) with Microsoft
 SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
 15.20.6792.19 via Frontend Transport; Wed, 13 Sep 2023 04:01:55 +0000
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none;

答案1

首先確認您的 Postfix 伺服器的主機名稱是否正確解析為有效的 IP 位址,例如「mail.example.com」解析為「1.1.1.1」。此外,請確保存在反向 DNS 記錄,將「1.1.1.1」連結回「mail.example.com」。這些基本的 DNS 設定在建立信任和傳遞電子郵件而不被標記為垃圾郵件方面發揮關鍵作用。

在多個網域共用具有公用 IP 的單一伺服器的情況下,請考慮為 HELO 交換採用一致的主機名,例如「mail.example.com」。這簡化了設定和管理,並且只需要一筆 SPF 記錄。但是,請務必小心,如果您的某個網域被列入黑名單,可能會影響您所有網域中的電子郵件送達率。或者,您可以選擇為每個網域指派單獨的公用 IP。雖然這提供了增強的隔離和彈性,但它的配置和管理設定更加複雜。

在 SPF DNS 記錄中包含 Postfix 伺服器的公用 IP(「1.1.1.1」)和 Office 365 的 SPF 記錄(「spf.protection.outlook.com」)至關重要。此步驟至關重要,因為 Office 365 可能代表您的網域發送電子郵件,特別是對於 Outlook 使用者等經過驗證的使用者。 SPF 記錄範例如下所示:「v=spf1 a:1.1.1.1 include:spf.protection.outlook.com ~all」。

如果「example.com」存在指向 Web 伺服器 IP(「2.2.2.2」)的 PTR 記錄,則將其變更為指向 Postfix 伺服器不會對 Web 伺服器產生負面影響。 PTR 記錄有助於驗證伺服器的真實性,並且應準確反映伺服器的功能。在這種情況下,將「1.1.1.1」的 PTR 記錄更新為指向「mail.example.com」與其作為電子郵件伺服器的角色保持一致。

確保 DKIM 簽章在 Office 365 中正確加密。值得注意的是,Office 365 會自動使用 DKIM 簽署所有外寄電子郵件,因此您無需進行任何其他設定。

透過遵循這些DNS 和電子郵件配置最佳實踐,您可以增強Office 365 電子郵件中繼的可靠性。 。加密 Postfix 伺服器和 Office 365 之間的電子郵件連線以增強安全性和隱私性。設定 Postfix 以使用 SMTP AUTH 向 Office 365 進行身份驗證,以實現安全電子郵件中繼。

定期檢查電子郵件標頭,以確保 HELO 命令與伺服器的主機名稱一致,從而確保電子郵件成功傳送。

答案2

轉發與發送電子郵件有很大不同。您所描述的措施與發送電子郵件有關。他們應該所有這些都與轉發電子郵件無關。

我認為當 Postfix 伺服器和普通使用者(Outlook 使用者)向 Office 365 提交電子郵件時,DKIM 簽章應該在 Office 365 中加密。

不,這沒有任何意義。德基姆跡象電子郵件。接收者驗證簽名。如果無法讀取簽名,則無法執行此操作。

相關內容