2022年03月25日
Tweet
定期的にサーバーにアタックを受けてしまいます。
そういったとき、メールキューが大変なことになってしまうのです。
しかしその たいへんになったキュー なのですが、すべてを削除すると、正しいメールも削除することになりかねません。
ということで、以下の方法でキューを削除しました。
※ただ、期待通りの動きをしてくれるのかは不明でした。
postfixのキューから特定条件のメールを1行コマンドで削除する(postque,postsuper,xargs)
上記サイトから
postqueue -p | grep <消したいメールを絞り込む条件> | awk '{print $1}'| xargs -L 1 postsuper -d
海外の例を見ると、もうすこし細かく判断しているようでした。
上記コマンドでは、送信者・受信者どちらの場合でも grep に引っかかります。海外の事例では、送信者だけを検知させたり、しているような感じでした。
ただ大量にメールがあると、そうやってスパムを検知していてもどんどんと送信されてしまい、実際に削除コマンドが実行されるころにはそのキューは処理が完了してるのではないのか?という疑問が少しあります。
その場合には、以下のコマンドで、一旦キューにあるすべてのメールをホールド状態にすると、処理が確実になるような気がします。
postsuper -h ALL
参考
Postfix キューに溜まったメールの削除方法
上記参考サイトにもありますが、すべてのメールをホールド状態にしたときは、最後に必ず通常の状態に戻す必要があります。
postsuper -H ALL
postfix flush

そういったとき、メールキューが大変なことになってしまうのです。
しかしその たいへんになったキュー なのですが、すべてを削除すると、正しいメールも削除することになりかねません。
ということで、以下の方法でキューを削除しました。
※ただ、期待通りの動きをしてくれるのかは不明でした。
postfixのキューから特定条件のメールを1行コマンドで削除する(postque,postsuper,xargs)
上記サイトから
postqueue -p | grep <消したいメールを絞り込む条件> | awk '{print $1}'| xargs -L 1 postsuper -d
海外の例を見ると、もうすこし細かく判断しているようでした。
上記コマンドでは、送信者・受信者どちらの場合でも grep に引っかかります。海外の事例では、送信者だけを検知させたり、しているような感じでした。
ただ大量にメールがあると、そうやってスパムを検知していてもどんどんと送信されてしまい、実際に削除コマンドが実行されるころにはそのキューは処理が完了してるのではないのか?という疑問が少しあります。
その場合には、以下のコマンドで、一旦キューにあるすべてのメールをホールド状態にすると、処理が確実になるような気がします。
postsuper -h ALL
参考
Postfix キューに溜まったメールの削除方法
上記参考サイトにもありますが、すべてのメールをホールド状態にしたときは、最後に必ず通常の状態に戻す必要があります。
postsuper -H ALL
postfix flush
stock_value at 17:53│Comments(0)│技術