SSLで暗号化とドメイン認証(2/2)
SSLの設定先は、以下の通り。
- Ubuntu 14.04.3 LTS
- apache 2.4.7
- postfix 2.11.10
- courier-imap-ssl 4.10.0
1. SSL証明書申請準備
秘密鍵を作成。openssl md5 * > rand.dat openssl genrsa -rand rand.dat -des3 2048 > sslkey.pem
この時点で、sslkey.pemはpassphrase付(暗号化済み)きである。
このまま以降の設定に利用すると、apache起動、メールサービス起動毎にpassphraseの入力が必要となってしまう。
なので、ここでpassphraseなし(暗号化なし)の秘密鍵も作っておく。
openssl rsa -in sslkey.pem -out ssl_nokey.pem
2. SSLサーバ証明書の取得
SSLストアの指示通り、秘密鍵を送り、料金をはらってSSLサーバ証明書を手に入れる。 Comodoは、メイルで、以下のファイルが届いた。- ドメイン名.crt
- COMODORSADomainValidationSecureServerCA.crt
- AddTrustExternalCARoot.crt
- COMODORSAAddTrustCA.crt
中間CA証明書、クロスルート証明書を合わせたファイルを作っておく。
cat COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt > ドメイン.ca_bunle
更に、秘密鍵とサーバ証明書を合わせたファイルも作っておく。
cat ドメイン名.crt ssl_nokey.pem > coureie.domain_key
サーバのssl関係ファイルを「/etc/ssl/comodo」と決め、SSLサーバにファイルを置く。
- ssl_nokey.pem
- ドメイン名.crt
- ドメイン.ca_bunle
- COMODORSAAddTrustCA.crt
- coureie.domain_key
3.apache
もともとオレオレ認証でsetup済みだったので、以下の変更&再起動でOK。/etc/apache2/sites-available/default-ssl.conf
# SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem # SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key SSLCertificateFile /etc/ssl/comodo/ドメイン名.crt SSLCertificateKeyFile /etc/ssl/comodo/ssl_nokey.pem
4.postfix
もともとオレオレ認証でsetup済みだったので、以下の変更&再起動でOK。/etc/postfix/main.cf
# smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem # smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key smtpd_tls_cert_file=/etc/ssl/comodo/ドメイン名.crt smtpd_tls_key_file=/etc/ssl/comodo/ssl_nokey.pem smtpd_tls_CAfile=/etc/ssl/comodo/ドメイン名.ca_bunle
5.courie imap
もともとオレオレ認証でsetup済みだったので、以下の変更&再起動でOK。
/etc/courier/imapd-ssl
# TLS_CERTFILE=/etc/courier/imapd.pem TLS_CERTFILE=/etc/ssl/comodo/coureie.domain_key # TLS_TRUSTCERTS=/etc/ssl/certs TLS_TRUSTCERTS=/etc/ssl/comodo/ドメイン名.ca_bunle