
シナリオ:
Postfix サーバーは、ホスティング会社の VPS 上で実行されます。
オフィス内では Dovecot IMAP サーバーが稼働しています。
Postfix は、最小限の中間ソフトウェアを使用して、受信したメールを Dovecot IMAP サーバーにプッシュします。この転送は、オープン インターネット経由で行われます。
つまり、Postfix は TCP 経由の仮想トランスポートに LMTP を使用でき、Dovecot は TCP 経由の LMTP をリッスンできることがわかります。
しかし、不正なメール サーバーが Postfix をバイパスし、開いている LMTP ポート上の Dovecot にメールを挿入するのを阻止するものは何でしょうか?
LMTP サービスは、TLS 経由のパスワード (最低でも)、または共通の CA によって署名された双方向 TLS 証明書検証 (より理想的には 2 つのサーバーが互いの ID を確認できる) などの認証方法によって保護できますか?
答え1
LMTP (Local Mail Transfer Protocol) は、電子メール メッセージのローカル配信用に設計されており、SMTP のような認証を本質的にサポートしていません。特にオープン インターネット経由で Postfix と Dovecot 間でメールを転送するために LMTP を使用する場合、セキュリティが懸念されます。
特定のシナリオに対処するには:
TLS暗号化:Postfix と Dovecot はどちらも LMTP の TLS 暗号化をサポートしています。これにより、2 つのサーバー間で転送されるデータが暗号化され、簡単に傍受されなくなります。
双方向 TLS 証明書検証:これは相互 TLS (mTLS) とも呼ばれます。mTLS では、クライアント (この場合は Postfix) とサーバー (Dovecot) の両方が証明書を提示して、お互いの ID を証明します。これにより、両者が信頼できるエンティティであることが保証されます。Postfix と Dovecot はどちらも mTLS をサポートしています。
ファイアウォールルール:不正アクセスを防ぐ方法の 1 つは、Dovecot LMTP ポートに接続できる IP を制限することです。ファイアウォール ルールを設定して、Postfix サーバーの IP アドレスからの接続のみを許可することができます。
VPN または SSH トンネル:もう 1 つの方法は、Postfix サーバーと Dovecot サーバーの間に VPN または SSH トンネルを設定することです。この方法では、LMTP トラフィックはこの安全なトンネルを介して送信され、セキュリティがさらに強化されます。
認証:LMTP 自体は認証をサポートしていませんが、前述の mTLS や VPN などの他のメカニズムを使用して、接続を効果的に「認証」することができます。
要約すればLMTP は従来のユーザー名/パスワード認証をサポートしていませんが、TLS、mTLS、ファイアウォール ルール、および場合によっては VPN または SSH トンネルを組み合わせて、Postfix と Dovecot 間の接続を保護できます。両方のサーバーが互いの証明書を検証する mTLS アプローチは、双方の ID を保証する堅牢な方法です。