この機能を使うにあたってはクライアント側も対応が必要だった。
dovecot
dovecotの設定変更。
10-ssl.conf
試してみるとわかるが、「ssl_cert = <」と「ssl_key = <」の行は消してはいけない。
local_name example.net {
ssl_cert = </etc/letsencrypt/live/example.net/fullchain.pem
ssl_key = </etc/letsencrypt/live/example.net/privkey.pem
}
local_name example.com {
ssl_cert = </etc/letsencrypt/live/example.com/fullchain.pem
ssl_key = </etc/letsencrypt/live/example.com/privkey.pem
}
postfix
公式ページのtls_server_sni_mapsを参考に。
main.cf
以下のように指定する。(以下の最初の二つも必要なようだ)
smtpd_tls_cert_file = /etc/letsencrypt/live/example.com/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/example.com/privkey.pem
tls_server_sni_maps = hash:/etc/postfix/sni
/etc/postfix/sni
公式ページによると、
# The example.com domain has both an RSA and ECDSA certificate
# chain. The chain files MUST start with the private key,
# with the certificate chain next, starting with the leaf
# (server) certificate, and then the issuer certificates.
とのことなので、以下のように指定する。
example.net /etc/letsencrypt/live/example.net/privkey.pem,
/etc/letsencrypt/live/example.net/fullchain.pem
example.com /etc/letsencrypt/live/example.com/privkey.pem,
/etc/letsencrypt/live/example.com/fullchain.pem
このファイルの更新時は、postmap に-Fオプションが必要である。と公式ページに記載あり。
postmap -F /etc/postfix/sni
また、証明書が更新されたらpostmapコマンドを実行する必要がある。
コメント