集合コントローラーの SSL 鍵の生成
集合ユーティリティー genKey コマンドを使用して、 Java™ 鍵ストア (JKS) 形式の鍵ストアを生成できます。 鍵ストアには、集合コントローラーとの Secure Sockets Layer (SSL) 通信を可能にする個人証明書が含まれます。
始める前に
集合コントローラーを作成します。『Liberty 集合の構成』を参照してください。
このタスクについて
集合コントローラーへのリモート JMX 接続では SSL を使用し、適切な SSL 鍵が必要です。 集合ユーティリティーの genKey コマンドで生成した鍵ストアには、集合コントローラーで信頼されている個人証明書が含まれます。 この生成した鍵ストアには、トラストストアとして機能できるように公開署名者証明書も含まれます。
集合メンバー・サーバーや非 Liberty サーバーなどの Java 仮想マシン (JVM) が集合コントローラーに接続するには、 集合コントローラーで信頼されている鍵が入った鍵ストアが JVM に必要です。 genKey コマンドは、この鍵ストアを生成します。 JVM は、こうした鍵ストアがあれば、集合コントローラーに接続し、集合コントローラーがその鍵を戻すことができます。 このように集合コントローラーの鍵を JVM に戻すことを SSL ハンドシェーク と呼びます。
JVM が集合コントローラーの鍵を JVM トラストストアに追加するには、 --autoAcceptCertificates オプションを使用する必要があります。 --autoAcceptCertificates オプションが使用されない場合、鍵をトラストストアに追加するように要求するプロンプトが出されます。
手順
wlp/bin/collective genKey [--host=collectiveControllerHost --password=collectiveControllerAdminUserPassword --port=collectiveControllerHTTPSPort --user=collectiveControllerAdminUserID --keystorePassword=generatedKeystorePassword --autoAcceptCertificates]
例えば、ポート 1090 を使用し、集合コントローラー管理ユーザー Admin1、パスワード Admin1pwd が設定された、ホスト machineA 上の集合コントローラーの場合、以下のコマンドを実行して鍵ストアを生成し、そのパスワードを kspwd に設定します。
collective genKey --host=machineA --password=Admin1pwd --port=1090 --user=Admin1 --keystorePassword=kspwd --autoAcceptCertificates
この例には、genKey コマンドに必要な以下の設定が含まれます。
- --host=collectiveControllerHost
- ターゲット集合コントローラーのホスト名
- --password=collectiveControllerAdminUserPassword
- ターゲット集合コントローラーの、管理ユーザーのパスワード。 パスワードが定義されていない場合、--user 設定で指定した管理ユーザーのパスワードが求められます。
- --port=collectiveControllerHTTPSPort
- ターゲット集合コントローラーの HTTPS ポート番号
- --user=collectiveControllerAdminUserID
- ターゲット集合コントローラーの管理ユーザー
- --keystorePassword=generatedKeystorePassword
- 生成された鍵ストアのパスワード。パスワードを指定して、値を定義していない場合、パスワードが求められます。
genKey コマンドには、次のオプション設定もあります。
- --autoAcceptCertificates
- このコマンドの間、SSL 証明書を自動的に信頼します。
- --certificateSubject=DN
- 生成された SSL 証明書の識別名 (DN)。
デフォルトの DN は次のとおりです。
CN=localhost,OU=client,O=ibm,C=usCN=localhost,OU=client,O=ibm,C=usCN=localhost,OU=client,O=ibm,C=usCN=localhost,OU=client,O=ibm,C=us
- --certificateValidity=numberOfDays
- 生成された SSL 証明書が有効な日数。 デフォルトの有効期間は 1825 日、つまり 5 年です。 最小の有効期間は 365 日です。
- --keystoreFile=filePath
- 鍵ストアが書き込まれるファイル。 デフォルトは、現行ディレクトリー内の key.jks ファイルです。
- --key=key
- aes エンコードに使用する鍵。 指定された鍵ストリングがハッシュ化され、パスワードの暗号化と暗号化解除に使用する暗号鍵が生成されます。 鍵をサーバーに提供するには、変数 wlp.password.encryption.key を定義し、その値に鍵を指定します。 このオプションを指定しないと、デフォルトの鍵が提供されます。