概要
nginx などはサーバ証明とCA証明書 (or 中間CA証明書) を結合して配置することができます
ただミドルウェアやツールによってはサーバ証明書とCA証明書は別に分けて配置しなければいけない場合があります
そんな場合に結合されたサーバ証明書を分割する方法を紹介します
環境
- Ubuntu 18.04
- openssl 1.1.1 11
サーバ証明書とCA証明書の順番を確認する
コマンドで確認できます
基本的に結合されている証明書は単純に複数の証明書が文字列で順番に結合されているだけです
ただ普通に見てもそれがどの証明書かわからないので openssl コマンドで確認します
-
openssl verify -show_chain --untrusted fullchain.pem fullchain.pem
で以下のような結果になれば OK です
以下の場合は上から順番にサーバ証明書CA証明書、中間CA証明書になります
fullchain.pem: OK
Chain:
depth=0: CN = *.myserver.com (untrusted)
depth=1: C = US, O = Let's Encrypt, CN = R3 (untrusted)
depth=2: C = US, O = Internet Security Research Group, CN = ISRG Root X1
分割する
あとは fullchain.pem を分割すれば OK です 「BEGIN CERTICATE」と「END CERTIFICATE」でひとかたまりなので最初の塊を server.crt として保存しあとの 2 つの塊を ca.crt として保存すれば OK です
手動で実施しても OK ですし適当なスクリプトを作成しても OK です
気をつけなければいけないのは必ず openssl コマンドで確認した順番と証明書の種類を意識して分割してください
サーバ証明書は基本一つになりCA関連の証明書は複数あります
0 件のコメント:
コメントを投稿