Postfix

後綴是否尊重灰名單響應?

  • November 6, 2020

我對我的郵件伺服器日誌中的活動有點困惑(地址和目的地為隱私而編輯):

Nov  1 21:00:03 mail postfix/smtp[745742]: Trusted TLS connection established to mx.example.com[192.0.2.1]:25: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)
Nov  1 21:00:10 mail postfix/smtp[745742]: 0C1551DC073: to=<johndoe@example.com>, relay=mx.example.com[192.0.2.1]:25, delay=7.3, delays=0.01/0.01/0.42/6.9, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 7E42A921A9A25)
Nov  1 21:00:11 mail postfix/smtp[745829]: Trusted TLS connection established to mx.example.com[192.0.2.1]:25: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)
Nov  1 21:00:18 mail postfix/smtp[745829]: 903371DC08B: host mx.example.com[192.0.2.1] said: 451 4.7.1 Greylisting in action, please come back later (in reply to end of DATA command)
Nov  1 21:00:18 mail postfix/smtp[745829]: Trusted TLS connection established to mx.example.net[192.0.2.2]:25: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)
Nov  1 21:00:25 mail postfix/smtp[745829]: 903371DC08B: to=<janedoe18@example.ca>, relay=mx.example.net[192.0.2.2]:25, delay=16, delays=0.01/1.4/7.7/7.2, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as BB99F922EC625)

似乎 postfix 在第二封郵件中收到了灰名單響應,但隨後立即重新嘗試發送到不同的 MX 記錄 ip (@21:00:18)?我誤解了這裡發生了什麼嗎?

除了這些例外,所有設置或多或少都是預設設置:

minimal_backoff_time = 180s
maximal_backoff_time = 3h

我想確保我們尊重收件人提供商的響應,但似乎 postfix 在重新嘗試傳遞之前等待了 180 秒,正如我所預期的那樣。

是的,postfix 尊重灰名單響應.. 但不尊重這封信,因為它不閱讀英文狀態文本。

建議: 可能不需要更改任何內容 - 其他 MX 確實在幾秒鐘後接受了您的消息。這種“請等 10 分鐘”的遊戲並不是每個人都在玩或稱之為灰名單。你真的只需要一個額外的連接來證明你在操作一個郵件隊列(或者無論如何都不關心規則),所以讓其他郵件伺服器等待比某些信譽數據庫查找花費的時間更長並不總是有意義的。

行為說明:

Postfix 不關心具體原因是什麼,只是它 在回复 DATA 命令結束時看到了一個臨時錯誤 。 相同的狀態程式碼 (451) 和增強狀態程式碼 (4.7.1) 可能用於許多其他原因,但它們都沒有清楚地傳達:“不要跟我或我的其他 MX”

在消息被延遲並受規則約束之前,如果任何其他 MX準備好接受該消息_backoff_time,postfix 會繼續嘗試。目前處於活動傳遞狀態的郵件會根據以下兩個條件之一自動移至延遲隊列:

  1. 所有目前已知的郵件交換器都已嘗試過,但沒有一個最終接受(例如程式碼 250)或永久拒絕(例如程式碼 550)未完成收件人的郵件
  2. 已遇到失敗的門檻值(隊列限制),並推遲了對目的地的進一步傳遞

如果您希望 postfix 在看到太多傳遞失敗後留出空間並最終推遲未完成的傳遞,請改用_destination_rate_delayand _destination_concurrency_failed_cohort_limit

引用自:https://serverfault.com/questions/1040990