Thwateが提供するp7bファイルがあります。次のコマンドを使用してcerファイルの証明書をエクスポートしようとすると、証明書チェーンが含まれません。
同じ方法を提案してください。このCERは、weblogicキーストアへのインポートに必要です。
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer
-print_certsは、p7bファイル内のすべての証明書をリストするために使用するオプションです。読み取り中のp7bファイルの形式を指定する必要がある場合があります。
その後、出力を新しいファイルにリダイレクトして、証明書の連結リストを作成できます。
テキストエディターでファイルを開くと、Base64(PEM)またはバイナリデータ(DER)が表示されます。
openssl pkcs7 -inform DER -outform PEM -in certificate.p7b -print_certs > certificate_bundle.cer
選択した答えは私にはうまくいきませんでしたが、近いです。自分に合ったチュートリアルと、StartComから取得した証明書を見つけました。
ファイルが次のようになるように、リーダーとトレーラーを変更します。
-----BEGIN PKCS7-----
[... certificate content here ...]
-----END PKCS7-----
たとえば、StartCom証明書は次の文字で始まりました。
-----BEGIN CERTIFICATE-----
で終わりました:
-----END CERTIFICATE-----
次のOpenSSLコマンドを実行します(この記事の執筆時点ではUbuntu 14.04.4で動作します)。
openssl pkcs7 -print_certs –in pkcs7.p7b -out pem.cer
出力は、証明書チェーンを持つ.cerです。
参照: http://www.freetutorialssubmit.com/extract-certificates-from-P7B/2206
唯一の問題は、ツールがPEM/DERでエンコードされたファイルごとに複数の証明書を期待しないため、結果ファイルに追加の証明書が認識されないことです。 openssl自体ですら。試して
openssl x509 -outform DER -in certificate.cer | openssl x509 -inform DER -outform PEM
自分で見てください。
ファイルから証明書を抽出する際にも同様の問題がありました。これは最も良い方法ではないかもしれませんが、私にとってはうまくいきました。
openssl pkcs7 -inform DER -print_certs -in <path of the file> | awk 'split_after==1{n++;split_after=0} /-----END CERTIFICATE-----/ {split_after=1} {print > "cert" n ".pem"}'
コマンドラインに-chainを追加すると、チェーンされた証明書がすべてエクスポートされます。