簡介
本檔案介紹一種自動執行CVP憑證所用的各種命令的方法。此功能也提供了讓憑證與RFC相容的選項。
必要條件
需求
思科建議您瞭解以下主題:
- 思科語音入口網站(CVP)
- Java Keytool
- 公開金鑰基礎架構(PKI)憑證
採用元件
本檔案中的資訊是根據以下軟體版本:
- 思科語音入口網站(CVP)12.5(1)
- 整合客服中心企業版(UCCE)
- 套裝客服中心企業版(PCCE)
- 營運及行政管理入口網站(OAMP)
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
設定
指令說明
這些命令旨在通過CVP在很大程度上自動執行管理證書中使用的命令。這些軟體未獲得官方支援,但已經過測試。
security.properties輸出示例:
Security.keystorePW = xt_PXM-*4Z!!ZQID7YX*6K(3iii
這些命令中能夠自動執行的部分是本行的第一部分。本節顯示了該行,然後說明了它的工作原理。
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO <command>
命令部分:
命令部分 |
說明 |
對於/f |
這是帶有交換機的DOS FOR命令,該交換機用於處理特定匹配的檔案內容。 |
"令牌=3" |
這表示我們需要第3個令牌或單詞。 在本節所示的security.properties檔案示例中,3個令牌是: 令牌1:Security.keystorePW 令牌2:= 令牌3:xt_PXM-*4Z!!ZQID7YX*6K(3iii) |
%i |
該變數儲存與FOR引數匹配的IN命令值。 |
在('more %CVP_HOME%\conf\security.properties') |
執行命令「more %CVP_HOME%\conf\security.properties」並將內容傳遞到FOR命令。 |
DO <命令> |
執行命令並傳遞%i的值。 |
本文檔中顯示的命令讀取security.properties中的口令並自動輸入keystore命令。這可確保終端使用者無需鍵入或複製/貼上此密碼,從而消除可能導致的錯誤。
指令
該示例命令全部使用名為cvp_certificate的備用別名。確保根據需要替換別名。
別名備份
通常不使用此命令,但是對備份舊證書和私鑰很有用。
此示例將cvp_certificate重新命名為cvp_certificate_back。
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -changealias -alias cvp_certificate -destalias cvp_certificate_back
匯出金鑰庫
此命令將整個金鑰庫匯出到一個文本檔案。這允許使用者檢查金鑰庫的內容。
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -list -v > %CVP_HOME%\conf\security\cvp_keystore.txt
刪除別名
此命令刪除當前別名和證書。此過程不可撤消,強烈建議您對金鑰庫進行備份。
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -delete -alias cvp_certificate
建立新的自簽名證書
此命令可建立一個新的自簽名證書。即使您選擇讓憑證授權單位(CA)簽署憑證,也需要此命令,因為這會建立憑證所需的私密金鑰。
對於不帶SAN的RSA證書(典型):
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -genkeypair -alias cvp_certificate -keysize 2048 -keyalg RSA -validity 1825
對於帶有SAN的RSA證書:
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -genkeypair -alias cvp_certificate -keysize 2048 -keyalg RSA -validity 1825 -ext san=dns:mycvp.mydomain.com,dns:localhost
主題替代名稱
-ext引數允許使用者使用特定的擴展。顯示的示例將新增一個主題替代名稱(SAN),該名稱帶有伺服器的完全限定域名(FQDN)以及本地主機。其他SAN欄位可以新增為逗號分隔值。
有效的SAN型別包括:
ip:192.168.0.1
dns:myserver.mydomain.com
email:name@mydomain.com
每個命令都需要提供6個值。依次為:公用名、組織單位、組織、城市、省(州)和國家(地區)。複製並更新答案,以滿足您的特定要求。然後,您可以根據需要將它們貼上到命令提示符中。
myserver.mydomain.com
My Organizational Unit
My Company
City
My State
US
匯出自簽名證書
此命令匯出自簽名證書。這允許將憑證匯入到其他元件,例如OAMP或PCCE管理資料伺服器。
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -export -alias cvp_certificate -file %CVP_HOME%\conf\security\cvp.crt
生成證書簽名請求(CSR)
此命令將建立CSR,以便您可以讓CA對請求進行簽名。對於沒有SAN的證書:
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -certreq -alias cvp_certificate -file %CVP_HOME%\conf\security\cvp.csr
對於使用SAN的證書:
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -certreq -alias cvp_certificate -file %CVP_HOME%\conf\security\cvp.csr -ext san=dns:mycvp.mydomain.com,dns:localhost
附註:您必須將SAN擴展包含在CSR請求中,以便證書包含SAN。
匯入CA簽名證書
這些命令依次匯入CA根、中間和伺服器證書。
將證書複製到%CVP_HOME%\conf\security\目錄。
確保根據需要更新別名和證書名稱。
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -import -v -trustcacerts -alias myrootca -file %CVP_HOME%\conf\security\root.crt
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -import -v -trustcacerts -alias myintermediate -file %CVP_HOME%\conf\security\intermediate.crt
FOR /f "tokens=3" %i IN ('more %CVP_HOME%\conf\security.properties') DO %CVP_HOME%\jre\bin\keytool.exe -storetype JCEKS -keystore %CVP_HOME%\conf\security\.keystore -storepass %i -import -v -trustcacerts -alias cvp_certificate -file %CVP_HOME%\conf\security\cvp.crt
驗證
沒有驗證此過程的步驟。
疑難排解
沒有步驟可排除此過程的故障。