Just another IT site ※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。At Your Own Risk!! TURN BACK WHILE YOU CAN
PR

【Postfix】溜まったメールキューを全削除するコマンドと、TLS設定(postconf)を確認するテクニック

※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。スクリプトはAI生成のものも多いのでコピー&ペーストの際は文字コードに注意ください!

こんにちは!Linuxサーバーでメールサーバー(Postfix)の構築や運用保守、トラブル対応、日々お疲れ様です。

メールサーバーを運用していると、

  • 「ループや大量送信テストの影響で、配信待ちのメール(キュー)が数千件も溜まってしまった!」

  • 「エラーメールが配信キューに滞留し続けているので、一度すべて綺麗にリセットしたい」

という緊急事態に遭遇することがあります。

今回は、Postfixのキューを安全に、かつ一瞬で全削除する神コマンドと、合わせてよく使う設定確認用の便利コマンドをまとめました。

スポンサーリンク
バッチ処理の自動化スキルは市場価値が高いです。今の自分の単価を調べてみませんか?
顧客常駐はもう嫌だ!社内SEへ転職するなら【社内SE転職ナビ】
Cursor・Claude Code・Codex AIスキルを学ぶなら
環境構築不要!AIエージェント開発を非エンジニアでも即実践【AI Agent Camp】

1. Postfixで溜まったメールキューを「全削除」するコマンド

Postfixに溜まっているすべての配信待ち・エラー滞留メールを完全に削除するには、postsuper コマンドを使用します。

➔ キューの全削除コマンド

Bash

$ sudo postsuper -d ALL

💡 コマンドの解説

  • -d オプションは「Delete(削除)」を意味します。

  • 引数に ALL (大文字)を指定することで、現在Postfixが保持しているすべてのキュー(incoming、active、deferred、holdなど)を対象に、一括で丸ごと削除してくれます。

⚠️ 実行前の注意点

このコマンドを実行すると、まだ相手に届いていない送信途中の重要なメールも含めてすべて消去されます。 「特定の宛先だけ消したい」「エラーメール(deferred)だけ消したい」という場合は、以下のように使い分けるのが安全です。

  • エラーで滞留しているメール(deferred)だけを削除する場合:

    Bash

    $ sudo postsuper -d ALL deferred
    

2. 現在の設定(TLSの暗号化レベルなど)を確認するコマンド

Postfixの設定を変更したあとや、「現在の暗号化設定はどうなっていたっけ?」と確認したいときに重宝するのが postconf コマンドです。

通常、設定ファイル(main.cf)の中身を catgrep で見に行く人が多いですが、postconf を使えば「デフォルト値も含めた、システムが実際に認識している現在の設定」をスマートに確認できます。

➔ TLSのセキュリティレベルを確認するコマンド

Bash

$ postconf | grep smtp_tls_security_level

💡 出力結果の読み方(例)

コマンドを実行すると、以下のような現在の設定値が表示されます。

Plaintext

smtp_tls_security_level = may

この値(セキュリティレベル)が何を意味しているかで、サーバーの挙動が変わります。

  • none :TLS暗号化を一切使用しない(平文通信のみ)。

  • may :相手のサーバーが対応していればTLSで暗号化し、非対応なら平文で送る(日和見暗号化・おすすめ設定)。

  • encrypt :強制的にTLS暗号化を使用する。相手が非対応ならメールを送信しない(強力なセキュリティ)。

「設定ファイルを書き換えたはずなのにうまく動かない」という時は、main.cf を直接見に行く前に、この postconf コマンドを叩いて Postfix側が本当にその設定値で動いているか を確認するのがトラブルシューティングの近道です。

まとめ

Postfixのトラブル対応や設定変更の際に、今回の2つのコマンドを覚えておくと作業がとてもスムーズになります。

  • キューを全消去してスッキリさせるなら: postsuper -d ALL

  • 現在の設定(TLS設定など)を確実に見るなら: postconf | grep [設定名]

特に postsuper -d ALL は一撃で全てのメールが消える強力なコマンドなので、実行する際は本番環境のコンテキストをしっかり確認した上で、安全に作業を行ってくださいね!

タイトルとURLをコピーしました