
私は何百人もの顧客が使用するメール サーバーを管理しています。時々、顧客がウイルスに感染して大量のスパム メールを送信し始めます。主にこれに気付くのは、数百ではなく数万の保留中のメールで投稿キューがいっぱいになるためです。
スパム送信者の IP アドレスを見つけてブロックするのは簡単ですが、それでもメール キューには数万件のスパム メールが残っており、送信者アドレスが異なることもよくあります。
投稿キューを印刷すると、postqueue -p
メール ID、送信者のメール アドレス、すべての受信者が表示されます。送信者の IP は表示されません。
次のコマンドを実行すると、メールの送信者の IP を見つけることができます。
postcat -q ABCDEF1234 | egrep "\\bclient_address="
ここで、「ABCDEF1234」はメール ID です。
postcat -q
私は、すべてのメール ID をリストし、それらをループして各 ID を実行し、入力 ID と一致しないものをフィルター処理するツールを作成しました。
これは機能しますが、非常に遅い441 件のメールを含む投稿キューをフィルタリングするには 7 ~ 8 秒かかります。何万件ものメールを含むスパムだらけの投稿キューをフィルタリングしようとする場合、このツールは役に立たないでしょう。
私の希望は、送信者の IP アドレスでフィルタリングできる、私が知らないツールやフラグがあるということです。
私はPostfix 2.10を使用しています