在Odoo中配置DNS記錄以發送電子郵件?

垃圾郵件標簽概述?

有時,Odoo的電子郵件會被不同的電子郵件提供商錯誤地分類為垃圾郵件并最終進入垃圾郵件文件夾。目前,一些設置不在Odoo的控制范圍內,特別是不同的電子郵件提供商根據自己的限制政策和/或限制方式對Odoo的電子郵件進行分類的方式。

在Odoo中,電子郵件的發送者格式為 "作者姓名" <notifications@mycompany.odoo.com> 。也就是說,可以將其翻譯為: "作者姓名" <{ICP.mail.from.filter}@{mail.catchall.domain}> 。在這種情況下,ICP代表系統參數(ir.config.parameters)。通過 通知配置 ,可以大大提高郵件的可投遞性。

為了讓服務器更加頻繁地接受Odoo發送的郵件,其中一個解決方案是讓客戶在自己的郵箱中創建規則??梢栽陔娮余]件收件箱中添加過濾器,以便在收到來自Odoo( notifications@mycompany.odoo.com )的郵件時將其移動到收件箱中。還可以將Odoo數據庫域添加到接收域的安全發件人列表或白名單中。

如果Odoo的電子郵件服務器出現在黑名單上,請通過 `新的幫助工單<https://www.odoo.com/help>`_通知Odoo,支持團隊將努力將服務器從黑名單中移除。

如果Odoo數據庫使用自定義域名發送電子郵件,則應在自定義域名的DNS上實現三個記錄,以確保電子郵件的可交付性。這包括為: SPF(發件人策略框架) 、 DKIM(域鍵標識郵件)DMARC(基于域的消息認證、報告和符合性) 設置記錄。但最終接收郵箱的決定權在于接收方的郵箱。

符合SPF標準?

Sender Policy Framework (SPF) 協議允許域名所有者指定哪些服務器可以從該域名發送電子郵件。當服務器接收到傳入的電子郵件時,它會檢查發送服務器的 IP 地址是否在發送者的 SPF 記錄中允許的 IP 地址列表中。

注解

郵件的 SPF 驗證是在郵件中 Return-Path 字段所提到的域名上執行的。對于由Odoo發送的郵件,該域名對應于數據庫系統參數中的 mail.catchall.domain 鍵的值。

一個域名的 SPF 策略是通過設置 TXT 記錄來實現的。如何創建或修改 TXT 記錄取決于托管域名的 DNS 區域的提供商。為了使驗證正常工作,每個域名只能有一個 SPF 記錄。

如果該域名還沒有 SPF 記錄,請使用以下輸入創建一個: v=spf1 include:_spf.odoo.com ~all

如果該域名已經有 SPF 記錄,則必須更新該記錄(不要創建新記錄)。

Example

如果 TXT 記錄是 v=spf1 include:_spf.google.com ~all ,請編輯它以添加 include:_spf.odoo.comv=spf1 include:_spf.odoo.com include:_spf.google.com ~all

使用免費工具,如 MXToolbox SPF,檢查 SPF 記錄是否有效。

啟用 DKIM?

DomainKeys Identified Mail(DKIM)允許用戶使用數字簽名對電子郵件進行身份驗證。

在發送電子郵件時,Odoo服務器在郵件頭中包含一個唯一的 DKIM 簽名。接收方的服務器使用數據庫域名中的 DKIM 記錄解密此簽名。如果簽名和記錄中包含的密鑰匹配,則保證該消息是真實的且在傳輸過程中未被篡改。

要啟用 DKIM ,請在域名的 DNS 區域中添加一個 CNAME 記錄:

odoo._domainkey IN CNAME odoo._domainkey.odoo.com.

小技巧

如果域名是 mycompany.com ,請確保創建一個子域名 odoo._domainkey.mycompany.com ,其規范名稱為 odoo._domainkey.odoo.com. 。

創建或修改 CNAME 記錄的方式取決于托管域名的 DNS 區域的提供商。最常見的提供商如下所示: 下面列出的 。

使用免費工具如 DKIM Core 檢查 DKIM 記錄是否有效。如果要求選擇器,請輸入 odoo 。

檢查 DMARC 策略?

基于域名的郵件身份驗證、報告和合規性(DMARC)記錄是一種協議,它統一了: SPF(發件人策略框架) 和: DKIM(域名密鑰識別郵件) 。域名的: DMARC(基于域名的郵件身份驗證、報告和合規性) 記錄中包含的指令告訴目標服務器如何處理未通過: SPF(發件人策略框架) 和/或: DKIM(域名密鑰識別郵件) 檢查的傳入電子郵件。

Example

DMARC: TXT記錄

v=DMARC1; p=none;

有三種 DMARC 策略:

  • p=none

  • p=quarantine

  • p=reject

p=quarantinep=reject 指示接收電子郵件的服務器在 SPF 和/或 DKIM 檢查失敗時將該電子郵件隔離或忽略。

如果域名使用 DMARC 并定義了其中一種策略,則該域名必須符合 SPF 或啟用 DKIM 。

警告

Yahoo或AOL是具有設置為 p=rejectDMARC(基于域的消息身份驗證、報告和符合性) 策略的電子郵件提供商的示例。Odoo強烈建議不要為數據庫用戶使用 @yahoo.com * 或 * @aol.com 地址。這些電子郵件將永遠無法到達其收件人。

p=none 用于讓域名所有者接收有關使用其域名的實體的報告。如果 DMARC 檢查失敗,它不應影響可傳遞性。

DMARC 記錄由形如 DNS 記錄的標簽組成。這些標簽/參數允許報告,例如 RUARUF ,以及更精確的規范,例如 PCT 、 P 、 SP 、 ADKIMASPF 。為了最佳實踐, DMARC 策略不應該開始過于嚴格限制

下面的圖表顯示可用的標簽:

標簽名稱

目的

示例

v

協議版本

v=DMARC1

百分比

過濾郵件的百分比

pct=20

RUF

用于取證報告的報告 URI

ruf=mailto:authfail@example.com

rua

聚合報告的報告 URI

rua=mailto:aggrep@example.com

p

組織域名的策略

p=quarantine

sp

OD子域名的策略

sp=reject

ADKIM

DKIM 的對齊模式

adkim=s

aspf

SPF 的對齊模式

aspf=r

使用類似于 MXToolbox DMARC 的工具檢查域名的 DMARC 記錄。

常見提供商的SPF、DKIM和DMARC文檔?

為了完全測試配置,請使用 Mail-Tester 工具,該工具可以在發送的一封電子郵件中提供內容和配置的完整概述。Mail-Tester 還可用于配置其他較少知名的提供商的記錄。