Email

如何檢索未送達的後綴電子郵件?

  • November 15, 2021

我最近發現所有打算通過我的 Ubuntu 伺服器上的後綴發送到我的特定地址的電子郵件都被第 3 方電子郵件提供商拒絕。

所以大約有 6 個月的電子郵件我沒有收到(這些電子郵件來自我網站上的送出表格)。

我已經檢查過了,postfix 郵件隊列是空的。

這是未送達電子郵件時的範例日誌條目(xxx 代表隱私)。

Nov 14 21:17:51 ip-xxx-xxx-xxx-xxx postfix/smtp[2932654]: D6F393EA37: to=<xxxx@xxxxx.com>, relay=mx2.privateemail.com[198.54.122.215]:25, delay=12, delays=0.02/0.01/7.2/5.1, dsn=5.1.8, status=bounced (host mx2.privateemail.com[198.54.122.215] said: 554 5.1.8 <runcloud@ip-xxx-xxx-xxx-xxx.us-east-2.compute.internal>: Sender address rejected: Domain not found (in reply to RCPT TO command))
Nov 14 21:17:51 ip-xxx-xxx-xxx-xxx postfix/cleanup[2932652]: 44F5E3EA38: message-id=<20211114211751.44F5E3EA38@ip-xxx-xxx-xxx-xxx.us-east-2.compute.internal>
Nov 14 21:17:51 ip-xxx-xxx-xxx-xxx postfix/bounce[2932655]: D6F393EA37: sender non-delivery notification: 44F5E3EA38
Nov 14 21:17:51 ip-xxx-xxx-xxx-xxx postfix/qmgr[4079]: 44F5E3EA38: from=<>, size=3166, nrcpt=1 (queue active)
Nov 14 21:17:51 ip-xxx-xxx-xxx-xxx postfix/qmgr[4079]: D6F393EA37: removed
Nov 14 21:17:51 ip-xxx-xxx-xxx-xxx postfix/local[2932656]: 44F5E3EA38: to=<runcloud@ip-xxx-xxx-xxx-xxx.us-east-2.compute.internal>, relay=local, delay=0.01, delays=0.01/0/0/0, dsn=2.0.0, status=sent (delivered to mailbox)
Nov 14 21:17:51 ip-xxx-xxx-xxx-xxx postfix/qmgr[4079]: 44F5E3EA38: removed

有什麼方法可以找回過去 6 個月內未送達的電子郵件?

原則上,如果您在隊列中有東西,您可以通過以下方式找到此類郵件的列表

postqueue -p

它告訴你ID。然後,對於每個 ID,您可以列印該電子郵件的完整正文

postcat -q <ID>

如果您決定刪除一條消息,

postsuper -d <ID>

但是,在您的情況下,您的隊列中沒有任何內容,因此您無法在任何地方獲取郵件,除非它在被提供給 Postfix 之前被保存在某個地方。

您的郵件被554程式碼拒絕。5xx 程式碼表示不可恢復的錯誤。這種錯誤使 Postfix 認為郵件不值得保留,因為它在任何後續嘗試中都無法投遞。順便說一句,“找不到域”不應該是“不可恢復的”(因為它可能是接收方的 DNS 的問題),但在這種情況下,您似乎擁有“私有”DNS 名稱,這可能為艱難的失敗辯護。

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