9.6. LMTP ソケットと LMTPS リスナーの設定
Postfix などの SMTP サーバーは、Local Mail Transfer Protocol (LMTP) を使用してメールを Dovecot に配信します。SMTP サーバーが実行されている場合:
- Dovecot と同じホストで、LMTP ソケットを使用します。
別のホストで、LMTP サービスを使用する
デフォルトでは、LMTP プロトコルは暗号化されていません。ただし、TLS 暗号化を設定した場合、Dovecot は LMTP サービスに同じ設定を自動的に使用します。その後、SMTP サーバーは、LMTPS プロトコルまたは LMTP 上の
STARTTLSコマンドを使用して接続できます。
前提条件
- Dovecot がインストールされています。
- LMTP サービスを設定する場合、Dovecot で TLS 暗号化が設定されます。
手順
LMTP プロトコルが有効になっていることを確認します。
# doveconf -a | grep -E "^protocols" protocols = imap pop3 lmtp出力に
lmtpが含まれている場合、プロトコルは有効になっています。lmtpプロトコルが無効になっている場合は、/etc/dovecot/dovecot.confファイルを編集し、protocolsパラメーターの値にlmtpを追加します。protocols = ... lmtpLMTP ソケットまたはサービスが必要かどうかに応じて、
/etc/dovecot/conf.d/10-master.confファイルのservice lmtpセクションで次の変更を行います。LMTP ソケット: デフォルトでは、Dovecot は自動的に
/var/run/dovecot/lmtpソケットを作成します。オプション: 所有権と権限をカスタマイズします。
service lmtp { ... unix_listener lmtp { mode = 0600 user = postfix group = postfix } ... }LMTP サービス:
inet_listenerサブセクションを追加します。service lmtp { ... inet_listener lmtp { port = 24 } ... }
SMTP サーバーのみが LMTP ポートにアクセスできるように、
firewalldルールを設定します。次に例を示します。# firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.0.2.1/32" port protocol="tcp" port="24" accept" # firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv6" source address="2001:db8:2::1/128" port protocol="tcp" port="24" accept" # firewall-cmd --reloadIPv4 アドレスのサブネットマスク
/32と IPv6 アドレスのサブネットマスク/128は、指定されたアドレスへのアクセスを制限します。Dovecot をリロードします。
# systemctl reload dovecot
検証
LMTP ソケットを設定した場合は、Dovecot がソケットを作成したことと、権限が正しいことを確認します。
# ls -l /var/run/dovecot/lmtp srw-------. 1 postfix postfix 0 Nov 22 17:17 /var/run/dovecot/lmtpLMTP ソケットまたはサービスを使用して、Dovecot にメールを送信するように、SMTP サーバーを設定します。
LMTP サービスを使用する場合は、SMTP サーバーが LMTPS プロトコルを使用するか、
STARTTLSコマンドを送信して暗号化された接続を使用するようにしてください。