ここに表示されているのは Apigee Edge のドキュメントです。
Go to the
Apigee X のドキュメントに移動します。 info
このドキュメントでは、TLS 証明書と関連する秘密鍵を PEM 形式または PFX(PKCS #12)形式に変換する方法について説明します。
Apigee Edge では、キーストアとトラストストアに PEM 形式または PFX 形式の証明書のみを保存できます。 証明書を既存の形式から PEM 形式または PFX 形式に変換する手順は、 OpenSSL ツールキットに依存しており、OpenSSL が使用可能な環境であれば適用できます。
始める前に
このドキュメントの手順を使用する前に、次のトピックを理解しておいてください。
- PEM 形式または PFX 形式に慣れていない場合は、 TLS/SSL についてをご覧ください。
- 証明書形式に慣れていない場合は、 SSL 証明書の形式をご覧ください。
- OpenSSL ライブラリに慣れていない場合は、 OpenSSL をご覧ください。
- このガイドのコマンドラインの例を使用する場合は、OpenSSL クライアントの最新 バージョンをインストールするか、最新バージョンに更新してください。
証明書を DER 形式から PEM 形式に変換する
このセクションでは、証明書と関連する秘密鍵を DER 形式から PEM 形式に変換する方法について説明します。
-
PEM 形式に変換する完全な証明書チェーン(
certificate.der)と関連する秘密鍵(private_key.der)を含むファイルを、scp、sftp、またはその他のユーティリティを使用して、OpenSSL がインストールされているマシンに転送します。たとえば、
scpコマンドを使用して、OpenSSL を含むサーバーの/tmpディレクトリにファイルを転送します。scp certificate.der servername:/tmp scp private_key.der servername:/tmp
ここで、servername は OpenSSL を含むサーバーの名前です。
- OpenSSL がインストールされているマシンにログインします。
-
証明書が配置されているディレクトリから次のコマンドを実行して、証明書と関連する秘密鍵を DER 形式から PEM 形式に変換します。
openssl x509 -inform DER -in certificate.der -outform PEM -out certificate.pem openssl rsa -inform DER -in private_key.der -outform PEM -out private.key
- 証明書が PEM 形式に変換されていることを確認します。
証明書を P7B 形式から PEM 形式に変換する
このセクションでは、証明書を P7B 形式から PEM 形式に変換する方法について説明します。
- PEM 形式に変換する完全な証明書チェーン(
certificate.p7b)を含むファイルを、scp、sftp、またはその他のユーティリティを使用して、OpenSSL がインストールされているマシンに転送します。たとえば、
scpコマンドを使用して、OpenSSL を含むサーバーの/tmpディレクトリにファイルを転送します。scp certificate.p7b servername:/tmp
ここで、servername は OpenSSL を含むサーバーの名前です。
- OpenSSL がインストールされているマシンにログインします。
-
証明書が配置されているディレクトリから次のコマンドを実行して、証明書を P7B 形式から PEM 形式に変換します:
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.pem
- 証明書が PEM 形式に変換されていることを確認します。
証明書を PFX 形式から PEM 形式に変換する
このセクションでは、TLS 証明書を PFX 形式から PEM 形式に変換する方法について説明します。
PFX ファイルを PEM 形式に変換すると、OpenSSL はすべての証明書と秘密鍵を
1 つのファイルに格納します。テキスト エディタでファイルを開き、各証明書
と秘密鍵(BEGIN/END ステートメントを含む)を個別のテキスト ファイルにコピーして、それぞれ
certificate.pfx、Intermediate.pfx(該当する場合)、
CACert.pfx、およびprivateKey.keyとして保存する必要があります。
Apigee は PFX/PKCS #12 形式をサポートしていますが、検証など、さまざまな理由で PEM 形式が便利です。
-
PEM 形式に変換する証明書と秘密鍵(
certificate.pfx,Intermediate.pfxCACert.pfx,privateKey.key)を、scp,sftpまたはその他のユーティリティを使用して、OpenSSL がインストールされているマシンに転送します。たとえば、
scpコマンドを使用して、OpenSSL を含むサーバーの/tmpディレクトリにファイルを転送します。scp certificate.pfx servername:/tmp
ここで、servername は OpenSSL を含むサーバーの名前です。
- OpenSSL がインストールされているマシンにログインします。
-
証明書が配置されているディレクトリから次のコマンドを実行して、証明書を P7B 形式から PEM 形式に変換します:
openssl pkcs12 -in certificate.pfx -out certificate.pem -nodes
- 証明書が PEM 形式に変換されていることを確認します。
証明書を P7B 形式から PFX 形式に変換する
このセクションでは、TLS 証明書を P7B 形式から PFX 形式に変換する方法について説明します。
PFX 形式に変換するには、秘密鍵も取得する必要があります。
-
PFX に変換する証明書(
certificate.p7b)を、scp、sftp、またはその他のユーティリティを使用して、OpenSSL がインストールされているマシンに転送します。たとえば、
scpコマンドを使用して、OpenSSL を含むサーバーの/tmpディレクトリにファイルを転送します。scp certificate.p7b servername:/tmp scp private_key.key servername:/tmp
ここで、servername は OpenSSL を含むサーバーの名前です。
- OpenSSL がインストールされているマシンにログインします。
-
証明書が配置されているディレクトリから次のコマンドを実行して、証明書を P7B 形式から PFX 形式に変換し、エンティティ証明書と中間 CA 証明書を別々のファイルにエクスポートします。
openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer openssl pkcs12 -export -in certificate.cer -inkey private_key.key -out certificate.pfx -certfile CACert.cer
証明書が PEM 形式であることを確認する
このセクションでは、証明書が PEM 形式であることを確認する方法について説明します。
- PEM 形式の証明書を表示するには、次のコマンドを実行します。
openssl x509 -in certificate.pem -text -noout
- エラーなしで証明書の内容を人が判読できる形式で表示できる場合は、証明書が PEM 形式であることを確認できます。
-
証明書が他の形式の場合は、次のようなエラーが表示されます。
unable to load certificate 12626:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:647:Expecting: TRUSTED CERTIFICATE View DER encoded Certificate
PEM 鍵ファイルと証明書ファイルを PKCS12/PFX にパッケージ化する
-
秘密鍵ファイルが PEM 形式であることを確認します。証明書の場合、チェーンに個別の PEM ファイルがある場合は、各ファイルをテキスト エディタで開き、次のように 1 つのファイルに連結します。
-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----
-
scp、sftp、またはその他のユーティリティを使用して、OpenSSL がインストールされているマシンにファイルを転送します。scp certificate.pem servername:/tmp scp private.key servername:/tmp
- OpenSSL がインストールされているマシンにログインします。
-
ファイルが配置されているディレクトリから次のコマンドを実行して、ファイルをエイリアス myalias の PKCS12 ファイルにパッケージ化します。プロンプトが表示されたら、適切なパスワードを入力します。
openssl pkcs12 -export -in certificate.pem -inkey private.key -out keystore.pfx -name myalias