Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
2.2.7.5. Postfix が SASL を使用するよう設定
Postfix の Red Hat Enterprise Linux バージョンでは、SMTP 認証(または SMTP AUTH)に Dovecot または Cyrus
SASL
実装を使用できます。SMTP 認証は、簡易メール転送プロトコル
の拡張です。これを有効にすると、サーバーと クライアント
の両方がサポートおよび許可される認証方法を使用して SMTP
クライアントを認証する必要があります。本セクションでは、Dovecot SASL
実装を使用するように Postfix を設定する方法を説明します。
Dovecot
POP
/IMAP
サーバーをインストールして、システムで Dovecot SASL
実装を使用できるようにするには、root
ユーザーとして以下のコマンドを実行します。
~]# yum install dovecot
Postfix
SMTP
サーバーは、UNIX-domain ソケットまたは TCP ソケット のいずれかを使用して Dovecot SASL
実装と通信できます。Postfix アプリケーションと Dovecot アプリケーションが別のマシンで実行されている場合のみ、最後のメソッドが必要になります。本ガイドでは、より優れたプライバシーを提供する UNIX-domain ソケットメソッドを優先します。
Postfix に Dovecot
SASL
実装を使用するように指示するには、両方のアプリケーションに対して多くの設定変更を実行する必要があります。以下の手順に従って、これらの変更を適用します。
Dovecot の設定
- 主な Dovecot 設定ファイルを変更し
/etc/dovecot/conf.d/10-master.conf
、以下の行を追加します(デフォルトの設定ファイルには関連するセクションの大半が含まれ、行はコメント解除する必要があります)。service auth { unix_listener /var/spool/postfix/private/auth { mode = 0660 user = postfix group = postfix } }
上記の例では、Postfix と Dovecot 間の通信に UNIX-domain ソケットを使用していることを前提としています。また、/var/spool/postfix/
ディレクトリーにあるメールキューとpostfix
ユーザーおよびグループで実行されているアプリケーションなど、PostfixSMTP
サーバーのデフォルト設定も前提としています。このようにして、読み取り/書き込みパーミッションはpostfix
ユーザーおよびグループに限定されます。以下の設定を使用して Dovecot を設定して、TCP
経由で Postfix 認証リクエストをリッスンするようにできます。service auth { inet_listener { port = 12345 } }
上記の例では、は使用するポートの数に12345
置き換えてください。 /etc/dovecot/conf.d/10-auth.conf
設定ファイルを編集して Dovecot にplain
およびlogin
認証メカニズムを使用して PostfixSMTP
サーバーを提供するよう指示します。auth_mechanisms = plain login
Postfix の設定
Postfix の場合には、主要な設定ファイルのみを変更する
/etc/postfix/main.cf
必要があります。以下の設定ディレクティブを追加または編集します。
- Postfix SMTP
サーバー
で SMTP 認証を有効にします。smtpd_sasl_auth_enable = yes
- Postfix が SMTP 認証に Dovecot
SASL
実装を使用するように指示します。smtpd_sasl_type = dovecot
- Postfix キューディレクトリーに対する認証パスを提供します(相対パスを使用すると、Postfix サーバーが chroot で実行しているかどうかに関わらず、設定が確実に機能します)。
smtpd_sasl_path = private/auth
この手順では、Postfix と Dovecot 間の通信に UNIX-domain ソケットを使用することを前提としています。通信に TCP ソケットを使用する場合に、通信にTCP
ソケットを使用する場合に Postfix が別のマシンで Dovecot を検索するようにするには、以下のような設定値を使用します。smtpd_sasl_path = inet:127.0.0.1:12345
上記の例では、を Dovecot マシンのIP
アドレスと Dovecot の/etc/dovecot/conf.d/10-master.conf
設定ファイル12345
で指定したポートで置き換える127.0.0.1
必要 があります。 - Postfix
SMTP
サーバーがクライアントで利用可能にするSASL
メカニズムを指定します。暗号化セッションと暗号化されていないセッションには、異なるメカニズムを指定できることに注意してください。smtpd_sasl_security_options = noanonymous, noplaintext smtpd_sasl_tls_security_options = noanonymous
上記の例では、暗号化されていないセッションでは匿名認証は許可されず、暗号化されていないユーザー名またはパスワードを送信するメカニズムがないことを示しています。暗号化セッション(TLS
を使用)では、非匿名認証メカニズムのみが許可されます。許可 されるSASL
メカニズムを制限するためのサポートされるすべてのポリシーの一覧は、http://www.postfix.org/SASL_README.html#smtpd_sasl_security_options を参照してください。
その他のリソース
以下のオンラインリソースは、
SASL
で Postfix SMTP 認証を設定するのに役立つ追加情報を提供します。
- http://wiki2.dovecot.org/HowTo/PostfixAndDovecotSASL: SMTP 認証に Dovecot
SASL
実装を使用するように Postfix を設定する方法に関する情報が含まれています。 - http://www.postfix.org/SASL_README.html#server_sasl: SMTP 認証に Dovecot または Cyrus
SASL
実装のいずれかを使用するように Postfix を設定する方法に関する情報が含まれています。