CloudFrontで使用するために、証明書をAWS証明書ストアにアップロードしようとしています。
まず、チェーンバンドルなしでアップロードしてみました。 CloudFrontエンドポイントで有効にしようとすると、有効な証明書チェーンがなかったというエラーが発生しました。
そこで、次のコマンドでPFXアーカイブから証明書チェーンを抽出しようとしました。
openssl pkcs12 -in archive.pfx -nodes -nokeys -cacerts -passin pass:password | openssl x509 -chain -out bundle.crt
しかし、それはunknown option -chain
Googleを何度も利用していますが、チェーンバンドルを抽出する方法を説明するページを開くたびに-chain
スイッチ。
たぶん、最初のコマンドの出力をアップロードするだけで十分だと思いました。そのとき、AWS-CLIは次のように言っています。
Unable to validate certificate chain. The certificate chain must start with the immediate signing certificate, followed by any intermediaries in order. The index within the chain of the invalid certificate is: -1
奇妙なことに、PKCS12キーストアをダンプするとき、OpenSSLは証明書を正しい順序に並べません。
証明書をPEMファイルにダンプします。
openssl pkcs12 -in archive.pfx -nodes -nokeys \
-passin pass:password -out chain.pem
後でファイルを編集して、正しい順序に並べます。
-chain
はpkcs12
サブコマンドに対してのみ有効であり、creating PKCS12キーストアの場合に使用されます。