前のトピック: 双方向 SSL次のトピック: CA Risk Authentication サーバとユーザ データ サービスの間で SSL を有効にする


ユーティリティを使用した証明書リクエストの生成

ユーティリティまたはツールを使用して証明書を生成することもできます。 keytool ユーティリティ(JDK で使用可能)は以下の操作に使用されています。

  1. キーストアを生成します。

    keytool は、キーストアと呼ばれるファイルにキーと証明書を格納します。キーストアは、クライアントまたはサーバの識別に使用される証明書のリポジトリです。 通常、キーストアは 1 つのクライアントまたは 1 つのサーバに固有です。 デフォルト キーストア実装は、ファイルとしてキーストアを実装します。 これはパスワードを使用して秘密キーを保護します。 キーストアは、keytool を実行するディレクトリで作成されます。

    以下のコマンドを使用して、キーストアを生成します。

    $%JAVA_HOME%/\bin/\keytool -genkey -keyalg RSA -alias <server/or/client> -keystore <keystore_name>.jks -storetype JKS -storepass <password> -keysize 1024 -validity <validity_period_in_days>
    
  2. 証明書署名リクエスト(CSR)を生成します。

    CSR は、暗号化された識別テキスト(「認証機関(CA)からの証明書の直接取得」の1 つ目の表を参照)で、証明書が使用されるシステム上で生成する必要があります。 秘密キーは通常 CSR を作成するのと同時に作成されます。

    以下のコマンドを使用して、CSR を生成します。

    $%JAVA_HOME%/\bin/\keytool -certreq -v -alias <server/or/client> -keystore <keystore_name>.jks -storepass <password> -file <server/or/client>certreq.csr
    
  3. 前の手順で生成された CSR を CA にサブミットして証明書を生成します。
    1. 任意の CA へのリンクにアクセスします。

      たとえば、MSCA を使用する場合、リンクは以下のようになります。

      http://<IP_Address_of_the_CA>/certsrv/

    2. 証明書リクエストを作成し、サブミットするためのリンクに移動します。

      たとえば、MSCA を使用する場合、[タスクの選択]セクションで、[証明書の要求]オプション、[証明書の要求の詳細設定]オプション、[Base 64 エンコード CMC または PKCS #10 ファイルを使用して証明書の要求を送信する]オプションの順にクリックします(または、証明書を更新する場合、base-64-encoded PKCS #7 ファイルを使用して更新リクエストをサブミットします)。 最後に、<server/or/client>clientcertreq.csr の内容をコピーして Base-64-encoded certificate request フィールドに貼り付け、[提出]をクリックします。

    3. Base-64 エンコード形式で以下のファイルをダウンロードします。
      • clientcert.cer としての署名された証明書
      • clientcertchain.p7b としての完全な証明書チェーン
      • clientcacert.cer としての CA 証明書
  4. キーストアに証明書チェーンをインポートします。

    以下のコマンドを使用します。

    $%JAVA_HOME%/\bin/\keytool -import -keystore <server/or/client>keystore.jks -storepass <password> -file <server/or/client>certchain.p7b -alias <server/or/client>
    
  5. 証明書またはキーストアを必要な形式に変換します。