現在、私はAmavis、Spamassassin、Clamav、およびすべてのベルとホイッスルを使用してPostfixを実行しています。
構成にRSpamdを追加したいのですが、Amavisを置き換えたくありません。それらを並べて実行し続け、件名にスパムメッセージをマークし、ヘッダーを追加して、どちらがスパムをキャッチするのに優れているかを確認します。
問題は、Amavisがリターンパスを持つsmtpd_proxy_filterとして追加されていることです。 RSpamdがmilterとして追加されます。 RSpamdを単独で実行することは問題ありませんが、Amavisを追加すると、メールがプロキシにリダイレクトされるため、Receivedヘッダーが追加されます。したがって、RSpamdは、すべてのメールがローカルホストからのものであると見なし、一部のチェックをスキップしてヘッダーを追加しません。
私はいくつかの解決策について考えていましたが、それらを実装できるかどうか、そしてどのように実装できるかわかりません。
-o smtpd_milters
を追加しても機能しませんでしたそのいずれかが達成可能ですか?
ここの設定ファイル:
私のmain.cfには次のものがあります。
smtpd_milters = inet:127.0.0.1:12345
inet:localhost:11332
non_smtpd_milters = inet:127.0.0.1:12345
milter_default_action = accept
milter_content_timeout = 30s
DKIMの場合はポート12345、RSpamdの場合は11332
ありがとう
数年前に同様の状況にありました。 Amavisからメールを受信しているsmtpdにmaster.cf _Received:
_を介して追加することにより、実際にremove不要な_-o header_checks=pcre:/etc/postfix/remove_received.pcre
_ヘッダーを削除できます。 (おそらく127.0.0.1:25インスタンスですが、これはAmavisがフィルタリングされたメールを転送する場所によって異なります)。
_remove_received.pcre
_のPCREは次のようになります。
/^Received: from server.my.domain \(\[127.0.0.1\]\).*/ IGNORE
グループ化演算子として解釈されるブラケットのバックスラッシュエスケープに注意してください。 Amavisが接続して自己紹介する方法によっては、追加の行としてlocalhostを追加する必要がある場合もあります。
smtpd_proxy_filter
とsmtpd_milter
を一緒に使用しないでください。 AmavisとRspamdを並べて実行するには、Amavisを amavisd-milter と統合することを検討してください。 smtpd_milter
は、さまざまなミルターを次々に呼び出すことができます。