22.1 取代 iManager 的暫存自行簽署證書

獨立 iManager 安裝會包含暫時性的自我簽署證書,以供 Tomcat 使用。證書的有效期為一年。NetIQ 提供此證書的目的是協助您啟動並執行系統,以便在安裝 iManager 後可立即安全地使用該產品。NetIQ 和 OpenSSL 不建議將自行簽署的證書用於測試以外的目的,相反,您應該用安全的證書取代暫存證書。

Tomcat 將自行簽署的證書儲存在使用 Tomcat (JKS) 格式檔案的金鑰儲存區中。通常,您是透過輸入私密金鑰來取代該證書的。但是,用於修改 Tomcat 金鑰儲存區的 keytool 無法輸入私密金鑰。該工具只能使用自行產生的金鑰。

本節說明如何使用 NetIQ Certificate Server 在 eDirectory 中產生公用金鑰/私密金鑰組,以及如何取代暫存證書。如果您正在使用 eDirectory,則可以使用 NetIQ Certificate Server 安全地產生、追蹤、儲存和撤銷證書,而無需再採用其他工具。

附註:本節的資訊並不適用於 OES Linux,該系統同時安裝 Tomcat 和 Apache。OES Linux 文件包含有關取代自我簽署 Apache/Tomcat 證書的資訊。

22.1.1 在 Linux 上取代 iManager 自行簽署的證書

本節介紹如何在 Linux 平台上的 eDirectory 中建立金鑰組,並透過 PKCS#12 檔案輸出公用金鑰、私密金鑰和根證書管理中心 (CA) 金鑰。其中包括修改 Tomcat 的 server.xml 組態檔案,以使用 PKCS12 指令,並使組態指向實際的 P12 檔案而不是使用預設的 JKS 金鑰儲存區。

此程序使用下列檔案:

  • /var/opt/novell/novlwww/.keystore,用於存放暫存金鑰組

  • /opt/novell/jdk1.7.0_25/jre/lib/security/cacerts,用於存放可信的根證書

  • /etc/opt/novell/tomcat7/server.xml,用於設定 Tomcat 的證書用法

若要在 Linux 上取代自行簽署的證書:

  1. 若要建立新證書,請完成以下步驟:

    1. 登入 iManager。

    2. 按一下 NetIQ Certificate Server > 建立伺服器證書。

    3. 選取相應的伺服器。

    4. 指定伺服器的綽號。

    5. 接受其餘的證書預設值。

  2. 若要將伺服器證書輸出到 Tomcat 主目錄,請完成以下步驟:

    1. 在 iManager 中,選取目錄管理 > 修改物件。

    2. 瀏覽並選取 Key Material Object (KMO) 物件。

    3. 按一下證書 > 輸出。

    4. 指定密碼。

    5. 將伺服器證書儲存為 /var/opt/novell/novlwww 目錄中的 PKCS#12 (.pfx)。

  3. 若要將 .pfx 檔案轉換為 .pem 檔案,請完成以下步驟:

    1. 輸入一個指令,例如 openssl pkcs12 -in newtomcert.pfx -out newtomcert.pem。

    2. 指定您在步驟 2 中為證書指定的相同密碼。

    3. 為新的 .pem 檔案指定密碼。

      如果您想使用相同密碼也可以。

  4. 若要將 .pem 檔案轉換為 .p12 檔案,請完成以下步驟:

    1. 輸入一個指令,例如 openssl pkcs12 -export -in newtomcert.pem -out newtomcert.p12 -name "New Tomcat"。

    2. 指定您在步驟 3 中為證書指定的相同密碼。

    3. 為新的 .p12 檔案指定密碼。

      如果您想使用相同密碼也可以。

  5. 若要停止 Tomcat,請輸入以下指令:

    /etc/init.d/novell-tomcat7 stop
    
  6. 為確保 Tomcat 使用新建立的 .p12 證書檔案,請將 keystoreType、keystoreFile 和 keystorePass 變數新增至 Tomcat 組態檔案 (預設為 /etc/opt/novell/tomcat7.0.42/server.xml)。例如:

    <Connector className="org.apache.coyote.tomcat7.CoyoteConnector"
     port="8443" minProcessors="5" maxProcessors="75" enableLookups="true"
     acceptCount="100" debug="0" scheme="https" secure="true"
     useURIValidationHack="false" disableUploadTimeout="true">
       <Factory className="org.apache.coyote.tomcat7.CoyoteServerSocketFactory"
     clientAuth="false" protocol="TLS" keystoreType="PKCS12"
     keystoreFile="/var/opt/novell/novlwww/newtomcert.p12" keystorePass="password" />
    </Connector>
    

    附註:將金鑰儲存區類型設為 PKCS12 時,您必須指定證書檔案的完整路徑,因為 Tomcat 將不再預設使用 Tomcat 主目錄路徑。

  7. 為確保 .p12 證書檔案正常運作,請完成以下步驟:

    1. 將該檔案的擁有權變更為相應的 Tomcat 使用者/群組,預設為 novlwww。例如 chown novlwww:novlwww newtomcert.p12。

    2. 將檔案許可權變更為 user=rw、group=rw 和 others=r。例如 chmod 654 newtomcert.p12。

  8. 若要重新啟動 Tomcat,請輸入以下指令:

    /etc/init.d/novell-tomcat7 start
    

22.1.2 在 Windows 上取代 iManager 自行簽署的證書

本節介紹如何在 Windows 平台上的 eDirectory 中建立金鑰組,並透過 PKCS#12 檔案輸出公用金鑰、私密金鑰和根證書管理中心 (CA) 金鑰。其中包括修改 Tomcat 的 server.xml 組態檔案,以使用 PKCS12 指令,並使組態指向實際的 P12 檔案而不是使用預設的 JKS 金鑰儲存區。

此程序使用下列檔案:

  • C:\Program Files\Novell\Tomcat\conf\ssl\.keystore,用於存放暫存金鑰組

  • C:\Program Files\Novell\jre\lib\security\cacerts,用於存放可信的根證書

  • C:\Program Files\Novell\Tomcat\conf\server.xml,用於設定 Tomcat 的證書用法

若要在 Windows 上取代自行簽署的證書:

  1. 若要建立新證書,請完成以下步驟:

    1. 登入 iManager。

    2. 按一下 NetIQ Certificate Server > 建立伺服器證書。

    3. 選取相應的伺服器。

    4. 指定伺服器的綽號。

    5. 接受其餘的證書預設值。

  2. 若要輸出伺服器證書,請完成以下步驟:

    1. 在 iManager 中,選取目錄管理 > 修改物件。

    2. 瀏覽並選取 Key Material Object (KMO) 物件。

    3. 按一下證書 > 輸出。

    4. 指定密碼。

    5. 將伺服器證書儲存為 PKCS#12 (.pfx)。

  3. 若要將 .pfx 檔案轉換為 .pem 檔案,請完成以下步驟:

    附註:Windows 上預設不安裝 OpenSSL。不過,您可以從 OpenSSL 網站下載適用於 Windows 平台的版本。此外,您可以轉換 Linux 平台上的證書,而該平台預設已安裝 OpenSSL。如需使用 Linux 轉換檔案的詳細資訊,請參閱節 22.1, 取代 iManager 的暫存自行簽署證書。

    1. 輸入一個指令,例如 openssl pkcs12 -in newtomcert.pfx -out newtomcert.pem。

    2. 指定您在步驟 2 中為證書指定的相同密碼。

    3. 為新的 .pem 檔案指定密碼。

      如果您想使用相同密碼也可以。

  4. 若要將 .pem 檔案轉換為 .p12 檔案,請完成以下步驟:

    1. 輸入一個指令,例如 openssl pkcs12 -export -in newtomcert.pem -out newtomcert.p12 -name "New Tomcat"。

    2. 指定您在步驟 3 中為證書指定的相同密碼。

    3. 為新的 .p12 檔案指定密碼。

      如果您想使用相同密碼也可以。

  5. 將 .p12 檔案複製到 Tomcat 證書位置 (預設為 C:\Program Files\Novell\Tomcat\conf\ssl\)。

  6. 若要停止 Tomcat 服務,請輸入以下指令:

    /etc/init.d/novell-tomcat7 stop
    
  7. 為確保 Tomcat 使用新建立的 .p12 證書檔案,請將 keystoreType、keystoreFile 和 keystorePass 變數新增至 Tomcat 的 server.xml 檔案中。例如:

    <Connector className="org.apache.coyote.tomcat7.CoyoteConnector"
     port="8443" minProcessors="5" maxProcessors="75" enableLookups="true"
     acceptCount="100" debug="0" scheme="https" secure="true"
     useURIValidationHack="false" disableUploadTimeout="true">
       <Factory className="org.apache.coyote.tomcat7.CoyoteServerSocketFactory"
     clientAuth="false" protocol="TLS" keystoreType="PKCS12"
     keystoreFile="/conf/ssl/newtomcert.p12" keystorePass="password" />
    

    如果金鑰儲存區類型設定為 PKCS12,則您必須指定證書檔案的整個路徑,因為 Tomcat 不再預設為使用 Tomcat 主路徑。

  8. 啟動 Tomcat 服務。