Sun Java System Application Server Enterprise Edition 8.1 2005Q2 管理指南

使用 Java 安全套接字延伸 (JSSE) 工具

使用 keytool 可以設定和使用 JSSE (Java 安全套接字延伸) 數位憑證。在 Platform Edition 的伺服器端,Application Server 使用 JSSE 格式來管理憑證和金鑰庫。在 Platform Edition 和 Enterprise Edition 中,用戶端 (應用程式用戶端或獨立用戶端) 均使用 JSSE 格式。

J2SE SDK 附帶有 keytool,可以讓管理員管理公開/私密金鑰對和關聯憑證。還可以讓使用者快取正與其通訊的另一方的公開金鑰 (以證書形式)。

若要執行 keytool,必須配置 shell 環境,以使 J2SE /bin 目錄位於路徑中,或者指令行中必須存在該工具的完整路徑。如需有關 keytool 的更多資訊,請參閱位於以下位置的 keytool 文件:http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/keytool.html

使用 keytool 公用程式

以下範例說明了與使用 JSSE 工具處理憑證相關的用法︰

Procedure使用 keytool 公用程式產生憑證

使用 keytool 產生、匯入和匯出憑證。依預設,keytool 將在其執行目錄中建立金鑰庫檔案。

  1. 變更至要執行憑證的目錄。

    始終在包含金鑰庫檔案和信任庫檔案的目錄中產生憑證,依預設,該目錄為 domain-dir/config。如需有關變更這些檔案位置的資訊,請參閱變更憑證檔案的位置

  2. 輸入以下 keytool 指令,以在金鑰庫檔案 keystore.jks 中產生憑證:


    keytool -genkey -alias keyAlias-keyalg RSA
     -keypass changeit
     -storepass changeit
    -keystore keystore.jks

    使用任何專屬名稱做為 keyAlias。如果您已變更金鑰庫或私密金鑰密碼的預設值,請使用新密碼取代以上指令中的 changeit

    螢幕上將顯示提示,要求您提供姓名、組織和其他資訊,keytool 將使用這些資訊產生憑證。

  3. 輸入以下 keytool 指令,以將產生的憑證匯出至檔案 server.cer (或 client.cer [如果您願意]):


    keytool -export -alias keyAlias-storepass changeit
     -file server.cer
     -keystore keystore.jks
  4. 如需由憑證授權機構簽署的憑證,請參閱使用 keytool 公用程式簽署數位憑證

  5. 若要建立信任庫檔案 cacerts.jks,並將憑證增加至該信任庫,請輸入以下 keytool 指令:


    keytool -import -v -trustcacerts
    -alias keyAlias
     -file server.cer
    -keystore cacerts.jks
     -keypass changeit

    如果您已變更金鑰庫或私密金鑰密碼的預設值,請使用新密碼取代以上指令中的 changeit

    工具將顯示有關證書的資訊並提示您是否要信任該證書。

  6. 鍵入 yes,然後按下 Enter 鍵。

    keytool 便會顯示如下資訊:


    Certificate was added to keystore
    [Saving cacerts.jks]
  7. 重新啟動 Application Server。

Procedure使用 keytool 公用程式簽署數位憑證

建立數位憑證之後,所有者必須簽署該憑證以防偽造。電子商務站點或那些身份認證對其很重要的站點可以從知名的憑證授權機構 (CA) 購買憑證。如果無需考量認證 (例如當私密安全通訊可以滿足全部需求時),則可節省獲取 CA 憑證所花費的時間和費用並使用自我簽署憑證。

  1. 請依照 CA 網站上的說明產生憑證金鑰對。

  2. 下載產生的證書金鑰對。

    將憑證儲存在包含金鑰庫檔案和信任庫檔案的目錄中,依預設,該目錄為 domain-dir/config。請參閱變更憑證檔案的位置

  3. 在 shell 中,變更至包含憑證的目錄。

  4. 使用 keytool 將憑證匯入本機金鑰庫和本機信任庫 (如有必要)。


    keytool -import -v -trustcacerts
    -alias keyAlias
     -file server.cer
    -keystore cacerts.jks
     -keypass changeit
    -storepass changeit

    如果金鑰庫密碼或私密金鑰密碼不是預設密碼,請使用新密碼取代以上指令中的 changeit

  5. 重新啟動 Application Server。

使用 keytool 公用程式刪除憑證

若要刪除現有憑證,請使用 keytool -delete 指令,例如:

keytool -delete
 -alias keyAlias
 -keystore keystore-name
 -storepass password

如需有關 -delete 指令之可能選項的完整清單,請參閱位於以下位置的 keytool 文件:http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/keytool.html