postfixのTLSの設定

続いてpostfixでTLSを使う設定をします。

postfixは25番ポートでの配送のやりとりと587番でのsubmissionを行っているわけですが、サーバ間の配送に使われる25番ポートは基本的に認証などは行いません。ただし、リレーは行わず自分宛のメールのみ受け取ります。

一方587番のsubmissionはメールの送信を受け付けます。ここでは認証が必要です。認証はSASL AUTHで行いますが、このときパスワードを平文で渡しても問題ないようにSTARTTLSによるTLSの使用を必須とします。

まずpostfixの設定ファイルは/etc/postfix/の下にあります。main.cfに以下の設定を行います。TLSに使うサーバ証明書の指定と、AUTHはTLSのときにしか行わないという制限です。証明書はdovecotに使用したものと同じものを使います。

smtpd_tls_cert_file = /etc/pki/dovecot/certs/mail.crt
smtpd_tls_key_file = /etc/pki/dovecot/private/mail.key
smtpd_tls_auth_only = yes

次にmaster.cfのsubmissionの行に以下のオプションを追加します。これはTLSを必ず使うと言う設定です。これで587番ポートでのsubmissionの接続は必ずTLSで行われることになります。

  -o smtpd_tls_security_level=encrypt

postfixにもクライアント認証の設定があるようですがThunderbirdでクライアント認証の設定方法が見当たらないので今回は見送ります。