postfixとdovecot2.x系でSSL通信で構築する場合の設定

はじめはWEB用の目的でSSLを購入しても、どうせだったらメールもより安全に通信を行いたい!!と思ったので、WEB用のSSLをメールにも使ってみた。

忘れないように自分用のメモ。

前提としては、

postfixとdovecot2.x系をpostfixadminで使っている。

また、メール情報はmysqlで保存している。

上記のやり方は様々なサイトに書かれているので、割愛。

また、メールサーバーのホスト名が取得したSSL証明書に設定したホスト名が一致している事が条件です。

一致していなければ、ワイルドカード「*.example.com」などのSSL証明書を購入する必要があります。

一番悩んだのは、postfixにもdovecotにも証明書をインストールしているのだけど、なぜか不明は証明書となっていまう。

テストしたクライアントはThunderbirdです。

色々悩んだ結果、メールにも中間証明書が必要だったということ・・・・

うーんここに行き着くのに時間がかかっていまった・・・

また、下記のようにそれぞれの設定ファイルに証明書のパスをインストール

もちろん中間証明書も忘れずに・・・

 vi /etc/postfix/main.cf
smtpd_tls_cert_file = /etc/pki/tls/certs/server.crt
smtpd_tls_key_file = /etc/pki/tls/certs/server.key
ssl_ca_file = /etc/pki/tls/certs/server-chain.crt←中間書証明書
smtpd_tls_session_cache_database = btree:/var/lib/postfix/smtpd_scache

で、dovecotも同じように

smtpd_tls_cert_file = </etc/pki/tls/certs/server.crt
smtpd_tls_key_file = </etc/pki/tls/certs/server.key
ssl_ca = /etc/pki/tls/certs/server-chain.crt←中間書証明書

上記をいれるけど、注意したいのは、ssl_ca_fileではなくssl_caと言うことです。

上記で、問題なく設定完了

あとは、お決まりの再起動をします。

Gmailのフェッチでも問題なくSSLで使えました。

うーん時間かかったなぁ