如何解決超出配額的垃圾郵件退回問題?

如何解決超出配額的垃圾郵件退回問題?

我正在調查郵件伺服器黑名單問題。

我們的郵件伺服器的使用者超過配額,這導致電子郵件被退回給寄件人,並顯示「使用者超過配額」訊息。其中一些電子郵件是帶有偽造「寄件者」欄位的垃圾郵件。郵件被退回到偽造者的寄件者地址。結果,我們的伺服器已被添加到某些黑名單中。這樣有道理嗎?

我不知道如何解決這個問題。我認為「用戶超出配額」訊息很有用:作為寄件者,我希望在訊息未送達時收到通知。

如果郵件被偵測為垃圾郵件,則可以選擇不退回該郵件。我們正在使用 postfix 和 spamassassin,當使用 來顯示這樣的訊息時postcat -q,我可以看到該訊息有一個巨大的垃圾郵件分數。

我們該如何著手?

在我們的配置中,spamassassin 僅標記訊息,每個用戶可以使用 sieve 來過濾/刪除/移動訊息。 spamassassin 本身應該刪除大量的郵件嗎? postfix 是否應該在退回郵件之前檢查垃圾郵件分數,或者首先在嘗試傳遞郵件之前檢查垃圾郵件分數?

我不想重新發明輪子,所以雖然我上面的想法可能有效,但我想知道人們通常如何解決這個問題。

答案1

在郵件最初被接受交付後,不要退回郵件(向原始或欺騙的寄件者發送一條「新」郵件,宣布超出配額的情況),而是在 smtp 協商期間拒絕該郵件。

「如何」取決於 LDA。

例如,對於 postfix + dovecot,一個選項似乎是:

http://blog.sys4.de/postfix-dovecot-mailbox-quota-en.html

首先,您需要在 Dovecots dovecot.conf 中啟動並設定配額狀態服務:

   plugin {
        ...
       quota_grace = 10%%
       # 10% is the default
       quota_status_success = DUNNO
       quota_status_nouser = DUNNO
       quota_status_overquota = "552 5.2.2 Mailbox is full"
        ...
     }
      
       service quota-status {
          executable = quota-status -p postfix
           inet_listener {
          port = 12340
          # You can choose any port you want
        }
              client_limit = 1
      }

為了使用新設定的 Dovecot 政策服務,您需要告訴 Postfix 與 main.cf 中的服務進行通訊:

    smtpd_recipient_restrictions =
       ...
       check_policy_service inet:mailstore.example.com:12340

相關內容