web-dev-qa-db-ja.com

すでにスパムとしてタグ付けされている発信スパムを停止します

私はとりわけAmavisとSpamassassinでPostfixサーバーを実行しています。 Postfixは外の世界からメールを受け取り、それをAmavisに渡します。 Amavisは、Spamassassinにメールの評価を依頼し、必要に応じてスパムとしてタグ付けします。次に、Postfixは、各ユーザーのprocmailrcに依存してメールを処理します。これは正しいアプローチだと思います。なぜなら、各ユーザーは自分のスパムをどうするかを選択できるはずだからです。残念ながら、仮想アリスリストに外国ドメインを持つユーザーもいます。これらのアドレスにはサーバーのユーザーアカウントがないため、これらのアドレスに転送されるスパムがprocmailrcを経由することはなく、スパムとしてタグ付けされたスパムを他のサーバーに転送することになります。すでにスパムとしてタグ付けされている送信メールを停止する方法はありますか?または、これを修正する他の方法はありますか?

編集:スパムであり、他のサーバーに転送されているメッセージのみを削除したいと思います。スパムとしてマークされたすべてのメールを削除したくありません。 2つを区別する方法はありますか?

7
me

ヘッダーに特定のタグが含まれているメールを削除できます。

詳細については、 Postfix Header Checks Manページ を参照してください。

例:

「/etc/postfix/main.cf」に追加します

header_checks = regexp:/ etc/postfix/header_checks

「/ etc/postfix/header_checks」に、

/ ^(件名:\ [SPAM \])(。+)$ /破棄

上記は、件名が「[SPAM]」で始まるすべての電子メールを破棄します。

編集:スパムであり、他のサーバーに転送されているメッセージのみを削除したいと思います。スパムとしてマークされたすべてのメールを削除したくありません。 2つを区別する方法はありますか?

これは、Postfix内で2つのインスタンスを実行することで実行できます。最初のインスタンスは、電子メールを(リモート電子メールサーバーではなく)2番目のインスタンスに転送します。ローカルトランスポートを指定することでも同じことができます。

2番目のインスタンスには上記のheader_checksがあります。このようにして、リモートサーバーへの電子メールのみがスパムを削除します。

いくつかの参考文献:

  1. トランスポートの指定
  2. Master.cfファイルに追加のエントリを指定することにより、Postfixの複数のインスタンスを実行できます。詳細 ここ
2