情境.
我有多個網域 Web 服務託管在 Digital Ocean Droplet 上(Ubuntu 和 Nginx 堆疊)。顯然,DO會自動設定一條PTR記錄。但是,當我查詢時
host <IP_ADDRESS>
[...] not found: 3(NXDOMAIN)
Droplet 使用 postfix,設定為 where inet_interfaces = all inet_protocols=ipv4
,同時mydestination
包含託管 Web 服務網域(有或沒有 www 前綴)。這些網域透過主機發送電子郵件sendmail
,主機定義為scheduler.sending.ws
DNS 和郵件服務透過第二個提供者(不是二級網域的記錄註冊商)運作。我首先註意到 A 記錄指向正確的 IP 位址,但有一個schedule.sending.ws
可以修復的拼字錯誤,儘管我不確定這是否完全相關。
mail.sending.ws
MX記錄正確@
指向第二個提供admin
者
v=spf1 a mx ptr include:someserver.net ~all
。
這會導致產生具有以下標頭的郵件隨機的mydestination
postfix main.cf 檔案中定義的網域:
Received: from www.other.ws ([IP_ADDRESS]:46818)
因此,兩個不同的發布引用,這種情況很容易導致被標記為垃圾郵件。
請原諒我的完全困惑和違反協議的詢問多個問題
我目前的假設是:
a) 是否需要為頒發網域設定一個新的 TXT DNS 項目,例如:v=spf1 a mx include:scheduler.sending.ws include:someserver.net ~all
?
b) 如果a) 是正確的,自然需要更正A 記錄
c) 標頭中的不匹配問題仍然需要解決。但這肯定是由應用程式(以及特定的網域)指定的,準備使用 postfix 定義的網域之一的電子郵件... postfix 會配合嗎?
是否缺少任何數據來正確解決此問題?
答案1
就整體情況而言,您確實應該遵循一些教程來進行工作基本設置,而不是在對電子郵件工作原理了解不足的情況下嘗試隨機配置。畢竟,如今管理電子郵件系統是一項複雜且具挑戰性的任務。對於沒有豐富經驗和對自己的電子郵件伺服器有特殊需求的任何人,建議使用具有所有必要的垃圾郵件預防系統和開箱即用的寄件者信譽處理的外部服務。
回答您單獨的問題並提供學習背後技術的指導。在此答案中,我們將用作www.example.com. A 192.0.2.1
Web 伺服器和mail.example.com. A 192.0.2.2
傳入郵件的郵件伺服器。兩者都需要發送郵件,但只mail.example.com
接收郵件,對吧?
a) 不。
include
機制不是為了這個目的。include:scheduler.example.com
意味著還有更多規則,即 中的其他 SPF 記錄scheduler.example.com. TXT
。由於可能沒有這樣的記錄,因此會導致 PermError,可能導致訊息被拒絕。SPF 記錄應允許所有將為對應主機名稱傳送郵件的伺服器。如果你使用
example.com
,你就擁有它example.com. TXT
,www.example.com.
永遠www.example.com. TXT
。建議使用ip4
和ip6
盡可能使用機制,因為在檢查 SPF 時需要更少的 DNS 查詢。這將導致:example.com. IN TXT "v=spf1 ip4:192.0.2.1 ip4:192.0.2.2 ~all" www.example.com. IN TXT "v=spf1 ip4:192.0.2.1 ip4:192.0.2.2 ~all"
b) 對於傳入郵件遞送,
scheduler.example.com. A
無關緊要,除非它被用作郵件交換器例如example.com. MX scheduler.example.com.
,但可能只有mail.example.com.
當您將其用作HELO
主機名稱時,您才應該有A
記錄來避免SMTP 橫幅不匹配。c)
HELO
主機名稱與 Postfix 設定參數匹配smtpd_banner
。預設情況下,它具有myhostname
作為變數 ie 與您的 相同myhostname
。與mydestination
此無關,也沒有任何內容從該設定中選擇隨機主機名稱:它是用於傳遞郵件,而不是用於發送郵件。主機
HELO
名稱需要有相符的記錄,建議與IP 位址A
相同。PTR
它不需要匹配信封寄件人域或From:
標頭位址。在多網域電子郵件伺服器中,這也是不可能的。
對於郵件域健康問題,建議使用實際網域,以便我們檢查發生了什麼。這個問題範圍廣泛且未具體說明:不可能給出準確或一般的答案。