中間証明書の組み込み
まず現在の証明書の内容を確認
1 2 3 4 5 6 7 8 9 10 11 | $ openssl s_client -connect cobra500.ddo.jp:443 < /dev/null 2> /dev/null | openssl x509 -text Certificate: Data: Version: 3 (0x2) Serial Number: 04:e8:84:9b:20:32:78:e0:ae:1d:74:0f:b7:37:26:cd:04:fe Signature Algorithm: sha256WithRSAEncryption Issuer: C=US, O=Let's Encrypt, CN=Let's Encrypt Authority X3 Validity Not Before: Nov 2 13:17:10 2020 GMT Not After : Jan 31 13:17:10 2021 GMT |
ちゃんとLet’s Encrypt Authority X3になってる、当たり前だけど
次にクロス署名済みのLet’s Encryptの中間証明書を取得する。
1 2 3 | $ curl https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem.txt -o lets-encrypt-x3-cross-signed.pem $ openssl verify lets-encrypt-x3-cross-signed.pem // 念のため検証 lets-encrypt-x3-cross-signed.pem: OK |
この中間証明書をシステムの証明書に組み込んでやればいい。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | // まず中間証明書をca-trustにコピーして $ sudo cp lets-encrypt-x3-cross-signed.pem /etc/pki/ca-trust/source/anchors // 証明書のデータベースを再構築 $ sudo update-ca-trust extract // CentOS6だと警告出るけどこれで正常らしいので問題なし update-ca-trust: Warning: The dynamic CA configuration feature is in the disabled state // SSL設定を確認 $ sudo vi /etc/httpd/conf.d/ssl.conf SSLCertificateFile /etc/letsencrypt/live/ドメイン名/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/ドメイン名/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/ドメイン名/chain.pem SSLCACertificateFile /etc/letsencrypt/live/ドメイン名/fullchain.pem |
あとはサーバー再起動で確実に