[8.5.5.4 或更新版本]

產生群體控制器 SSL 金鑰

您可以使用群體公用程式 genKey 指令,來產生 Java™ 金鑰儲存庫 (JKS) 格式的金鑰儲存庫。金鑰儲存庫包含個人憑證,能夠與群體控制器之間進行 Secure Sockets Layer (SSL) 通訊。

開始之前

建立群體控制器。請參閱配置 Liberty 群體

關於這項作業

與群體控制器之間的遠端 JMX 連線會使用 SSL,並且需要合適的 SSL 金鑰。群體公用程式 genKey 指令會產生金鑰儲存庫,內含群體控制器信任的個人憑證。產生的金鑰儲存庫也包含公用簽章者憑證,因此可當成信任儲存庫運作。

對於 Java 虛擬機器 (JVM),例如群體成員伺服器或非 Liberty 伺服器,如果要連接群體控制器,JVM 必須具有包含群體控制器所信任金鑰的金鑰儲存庫。genKey 指令會產生這個金鑰儲存庫。當 JVM 具有金鑰儲存庫之後,JVM 即可連接群體控制器,且群體控制器可以傳回其金鑰。群體控制器將金鑰傳回給 JVM 的這種程序,稱為 SSL 信號交換

為了使 JVM 將群體控制器金鑰新增至 JVM 信任儲存庫,com.ibm.websphere.collective.utility.autoAcceptCertificates JVM 內容必須設為 true。如果未設定這個 JVM 內容,會提示使用者將金鑰新增至信任儲存庫。「程序」的步驟 1 顯示如何設定 JVM 內容,並自動將金鑰新增至信任儲存庫,而不會出現提示。

程序

  1. 如果要自動信任 SSL 憑證,請將 com.ibm.websphere.collective.utility.autoAcceptCertificates JVM 內容設為 true

    在您將執行群體 genKey 指令的命令提示字元中,執行指令,以便將 JVM 內容設為 true

    適用於 AIX 平台適用於 HP UNIX 平台適用於 LINUX 平台適用於 Solaris 平台
    $ export JVM_ARGS=-Dcom.ibm.websphere.collective.utility.autoAcceptCertificates=true
    適用於 Windows 平台
    set JVM_ARGS=-Dcom.ibm.websphere.collective.utility.autoAcceptCertificates=true

    如果要確認 JVM 內容設定適當,請執行下列指令:

    適用於 AIX 平台適用於 HP UNIX 平台適用於 LINUX 平台適用於 Solaris 平台
    $ export JVM_ARGS
    適用於 Windows 平台
    set JVM_ARGS
    提示: 您可以先將這個 JVM 內容設為 true,再執行 create 指令以外的所有群體指令。許多群體次指令會連接群體控制器,並在 SSL 信號交換期間取回金鑰。需要主機鑑別資訊(使用者密碼或 SSH 私密金鑰)的群體次指令包括:genKeyjoinregisterHostremoveunregisterHostupdateHost
  2. 執行群體 genKey 指令,以產生 JKS 金鑰儲存庫。
    wlp/bin/collective genKey [--host=collectiveControllerHost --password=collectiveControllerAdminUserPassword --port=collectiveControllerHTTPSPort --user=collectiveControllerAdminUserID --keystorePassword=generatedKeystorePassword]

    舉例來說,如果群體控制器位於 machineA 主機上,該主機使用埠 1090,且群體控制器管理使用者是 Admin1,密碼是 Admin1pwd,請執行下列指令,來產生金鑰儲存庫,並將其密碼設為 kspwd

    collective genKey [--host=machineA --password=Admin1pwd --port=1090 --user=Admin1 --keystorePassword=kspwd]

    這個範例包含 genKey 指令的必要設定:

    --host=collectiveControllerHost
    目標群體控制器的主機名稱
    --password=collectiveControllerAdminUserPassword
    目標群體控制器管理使用者的密碼。如果沒有定義密碼,會提示您提供 --user 設定指定之管理使用者的密碼。
    --port=collectiveControllerHTTPSPort
    目標群體控制器的 HTTPS 埠號
    --user=collectiveControllerAdminUserID
    目標群體控制器的管理使用者
    --keystorePassword=generatedKeystorePassword
    產生之金鑰儲存庫的密碼。如果您有指定密碼,但未定義一值,會提示您提供密碼。

    genKey 指令也有選用設定:

    --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 變數,且其值就是金鑰。如果您沒有指定這個選項,產品會提供預設金鑰。

指示主題類型的圖示 作業主題

資訊中心條款 | 意見


「時間戳記」圖示 前次更新: 2015 年 6 月 22 日
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=tagt_wlp_generate_ssl_keys
檔名:tagt_wlp_generate_ssl_keys.html