OpenSSL でのデジタル証明書の作成

OpenSSL プログラムを使用して、テストで使用するデジタル証明書を作成できます。

始める前に

OpenSSL は、http://www.openssl.org/ の OpenSSL Project から入手できます。

手順

  1. 認証局 (CA) を作成します。 テストの目的で使用するため、この CA はインターネット上の公認の CA (VeriSign など) の代わりとなります。 この CA を使用して、テストで使用しようとしている各証明書にデジタル署名します。
    1. 認証要求 (CSR) ファイルを作成します。 「サブジェクト」(-subj) は、証明書のユーザーについて説明します。 示されているダミー値を入力してください。 次のコマンド行を使用して、abcdefg への証明書のパスワードを設定します。

      openssl req -passout pass:abcdefg -subj "/C=US/ST=IL/L=Chicago/O=IBM Corporation/OU=IBM Software Group/CN=Rational Performance Tester CA/emailAddress=rpt@abc.ibm.com" -new > waipio.ca.cert.csr

    2. 鍵ファイル waipio.ca.key を作成して、秘密鍵を保管します。 これにより、認証要求ファイルからパスワード保護が除去され、証明書に署名するたびにパスワードを入力しなくても済むようになります。 パスワード保護が除去されているため、認証要求ファイルはテストの目的にのみ使用してください。

      openssl rsa -passin pass:abcdefg -in privkey.pem -out waipio.ca.key

    3. 認証要求から X.509 デジタル証明書を作成します。 次のコマンド行を使用して、CA 秘密鍵を使用して署名された証明書を作成します。 この証明書は 365 日有効です。

      openssl x509 -in waipio.ca.cert.csr -out waipio.ca.cert -req -signkey waipio.ca.key -days 365

    4. 証明書と秘密鍵が含まれる PKCS#12 エンコード・ファイルを作成します。 次のコマンド行を使用して、P12 ファイルのパスワードを default に設定します。 Rational® Performance Tester は、デフォルトではすべての PKCS#12 ファイルに default というパスワードを使用します。

      openssl pkcs12 -passout pass:default -export -nokeys -cacerts -in waipio.ca.cert -out waipio.ca.cert.p12 -inkey waipio.ca.key

    これで、CA 証明書 (waipio.ca.cert) が作成され、この証明書をテスト用 Web サーバーや、ユーザー証明書への署名に使用できる秘密鍵ファイル (waipio.ca.key) にインストールできます。
  2. ユーザーのデジタル証明書を作成します。
    1. ユーザーの CSR ファイルを作成します。 初期パスワードを abc に設定します。 オプションで、適当なサブジェクトを指定します。

      openssl req -passout pass:abc -subj "/C=US/ST=IL/L=Chicago/O=IBM Corporation/OU=IBM Software Group/CN=John Smith/emailAddress=smith@abc.ibm.com" -new > johnsmith.cert.csr

    2. パスワードのない秘密鍵ファイルを作成します。

      openssl rsa -passin pass:abc -in privkey.pem -out johnsmith.key

    3. 新規ユーザー用の新しい X.509 証明書を作成し、ユーザーの秘密鍵を使用してそれにデジタル署名してから、CA 秘密鍵を使用してそれを認証します。 次のコマンド行を使用して、365 日有効な証明書を作成します。

      openssl x509 -req -in johnsmith.cert.csr -out johnsmith.cert -signkey johnsmith.key -CA waipio.ca.cert -CAkey waipio.ca.key -CAcreateserial -days 365

    4. オプション: DER エンコード・バージョンの公開鍵を作成します。このファイルに含まれるのは公開鍵のみで、秘密鍵は含まれていません。 秘密鍵は含まれないため、このファイルは共用可能で、パスワードで保護する必要がありません。

      openssl x509 -in johnsmith.cert -out johnsmith.cert.der -outform DER

    5. PKCS#12 エンコード・ファイルを作成します。 次のコマンド行を使用して、P12 ファイルのパスワードを default に設定します。

      openssl pkcs12 -passout pass:default -export -in johnsmith.cert -out johnsmith.cert.p12 -inkey johnsmith.key

    このステップを繰り返して、テストに必要な数だけデジタル証明書を作成します。 鍵ファイルは安全に保管し、必要がなくなったら削除してください。 CA 秘密鍵ファイルは削除しないでください。 CA 秘密鍵ファイルは、証明書への署名に必要です。

タスクの結果

これで、CA 証明書 (waipio.ca.cert) を WebSphere® にインストールできます。 オプションで、使用している Web サーバー専用のユーザー証明書を作成し、WebSphere にインストールします。

ユーザー証明書を個別に使用して、テストを記録できます。テストの編集や再生時にユーザー証明書 (johnsmith.cert.p12) を使用するには、それらの証明書を .rcs 拡張子が付いたファイルに ZIP 形式で圧縮します。 これにより、デジタル証明書ストアが作成されます。 デジタル証明書ストアについて詳しくは、『デジタル証明書ストアの作成』を参照してください。 ユーザー証明書を Web ブラウザーにインポートして、使用している環境でそれらの証明書を対話式にテストすることもできます。


フィードバック