postfix と dovecot で特定のユーザーに送信されたメールを拒否するにはどうすればよいですか?

postfix と dovecot で特定のユーザーに送信されたメールを拒否するにはどうすればよいですか?

私の会社には、ロックされたユーザー アカウントがいくつかあります。そのうちの 1 つがスパマーのターゲットになっています。スパマーは毎日そのアカウントにメールを送信します。ロックされたユーザーに送信されるメールを拒否するにはどうすればよいでしょうか。

答え1

メールを拒否しようとしています既知の送信者/ドメインからのメールだけでなく、ロックされたユーザーからのメールも受信しますか? その場合は、check_recipient_accessの代わりにを使用する必要がありますcheck_sender_access

のためにmain.cf

smtpd_recipient_restrictions =
    . . . 
    check_recipient_access hash:/etc/postfix/denied_recipients,
    . . . 

形式は/etc/postfix/denied_recipients同じですが、受信者ごとに異なります。

[email protected]   REJECT   Mailbox unavailable.

これもhash:Berkeley DB なので、覚えておいてくださいpostmap /etc/postfix/denied_recipients

答え2

基本的にpostfix次のようなファイル /etc/postfix/sender_access を作成できます。

# ADDRESS PATTERNS         # ACTION
[email protected]         550 Blacklisted
domain.com                 REJECT
user@                      REJECT

これをハッシュに変換しpostmap、次のような行を設定に追加します。

smtpd_recipient_restrictions = check_sender_access hash:/etc/postfix/sender_access

ただし、この方法では、応答のあるメッセージを拒否するか、またはブラックリストに登録するため、送信者に拒否されていることを知らせたくない場合があります。また、特定のユーザーに対してのみメールを拒否したい場合もあります。その場合は、procmailまたはポリシー サーバーの使用をお勧めします。Procmail は強力ですが、アクセスが難しい場合があります。Postfix のアーキテクチャでは、外部サーバー (単純なものでも) でspamassassin必要な処理を実行できます。

関連情報