web-dev-qa-db-ja.com

Windows Server上のOpenSSLは、pfxから証明書チェーンを抽出します

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
3
Feanaro

奇妙なことに、PKCS12キーストアをダンプするとき、OpenSSLは証明書を正しい順序に並べません。

証明書をPEMファイルにダンプします。

openssl pkcs12 -in archive.pfx -nodes -nokeys \
  -passin pass:password -out chain.pem

後でファイルを編集して、正しい順序に並べます。

-chainpkcs12サブコマンドに対してのみ有効であり、creating PKCS12キーストアの場合に使用されます。

4
fuero