如何將包含完整信任鏈和私密金鑰的已簽署憑證匯入 DPA - Linux
Summary: 如何將包含完整信任鏈和私密金鑰或萬用字元憑證的已簽署憑證匯入 DPA 應用程式伺服器。
Instructions
有時使用者的 CA 已提供已簽署的憑證。某些用戶的過程要求他們在 中生成\檢索證書。
在這些情況下,當且僅當已收到的簽名證書包含完整的證書鏈和私鑰時,才可以將簽名證書導入 apollo.keystore。
可包含私密金鑰的憑證格式如下所列:
- PKCS#12 (.pfx 或 .p12) - 可使用密碼保護,將伺服器憑證、中間憑證和私密金鑰儲存在單一 .pfx 檔案中。由於這些檔包含完整鏈 和 私鑰,因此您可以將其直接導入 apollo.keystore,但請記住,您需要別名和別名密碼才能執行此操作(證書的所有者應具有此資訊)。
- PEM (.pem、.crt、.cer 或 .key) - 可在 單一檔案中包含伺服器憑證、中繼憑證和私密金鑰。伺服器證書和中間證書也可以位於單獨的 .crt 或 .cer 檔中,私鑰可以位於.key檔中。如果伺服器\中間證書和密鑰是分開的,則直接導入是不夠的。
您可以通過在文字編輯器中打開證書檔進行檢查。
每個證書都包含在---- BEGIN CERTIFICATE---- 和 ----END CERTIFICATE---- 語句之間。
私鑰包含在----開始 RSA 私鑰-----和-----端 RSA 私鑰-----語句之間。
請確定 BEGIN CERTIFICATE---- 和 ----END CERTIFICATE---- 語句----中包含的憑證數量與鏈 (伺服器和中繼) 中的憑證數量相符----並且以 BEGIN RSA PRIVATE KEY-----)和-----端 RSA PRIVATE 金鑰結束。如果檔不包含完整的證書鏈和私鑰,則必須將證書導入到生成證書的金鑰庫中。如果您不確定憑證鏈結,請參閱 https://support.emc.com/kb/532108
確認檔案中包含完整憑證鏈和私密金鑰後,您應該會透過下列步驟匯入所有必須的內容:
-
從 dpa/services/standalone/configuration 複製 apollo.keystore 和 standalone.xml 檔案,並從 dpa/services/executive 複製 application-service.conf 檔案。如果您必須還原至原始組態,您可以使用這些檔案將 DPA 還原至正常運作狀態。將副本放在桌面上的資料夾中,以安全地保存並避免混淆。
-
打開standalone.xml檔的副本,然後搜索“鍵別名”。您應該會看到包含金鑰別名和密碼的行,如下所示:
<ssl name="ssl" key-alias="${apollo.keystore.alias:apollokey}" password="apollo"記下此行中的密碼。這是 apollo.keystore 密碼,您將在後續步驟中用到它。
-
從 services/_jre/bin 中的 DPA 安裝目錄執行下列命令:
./keytool -importkeystore -srckeystore "/opt/emc/dpa/services/standalone/configuration/wildcard.pfx" -srcstoretype pkcs12 -destkeystore "/opt/emc/dpa/services/standalone/configuration/apollo.keystore" -deststoretype JKS
注意:您必須指定已簽署認證檔案 (srckeystore) 和 apollo.keystore (destkeystore) 的正確位置。如需有關要求您輸入的內容的詳細資訊,請參閱以下範例:/opt/EMC/DPA/services/_jre/bin: ./keytool -importkeystore -srckeystore "/opt/emc/dpa/services/standalone/configuration/wildcard.pfx" -srcstoretype pkcs12 -destkeystore "/opt/emc/dpa/services/standalone/configuration/apollo.keystore" -deststoretype JKS Enter destination keystore password: (apollo.keystore password- check standalone.xml) Enter source keystore password: (alias password-owner of certificate will know this) Entry for alias my_alias successfully imported. Import command completed:1 entries successfully imported, 0 entries failed or cancelled
-
列出 apollo.keystore 的內容,以確認已簽署的憑證已正確匯入:
./keytool -list -v -keystore "/opt/emc/dpa/services/standalone/configuration/apollo.keystore"
(輸入 apollo.keystore 密碼)
它現在應包含 apollokey 的條目和具有使用者通配符別名(無論已簽名證書分配給哪個別名)的新條目。您應該會看到這是一個 PrivateKeyEntry,其中包含完整的憑證鏈結。
-
重新啟動應用程式服務,並嘗試登入 UI。**如果重新啟動服務產生錯誤,則應用程式 svc 無法啟動,或者此時您無法存取 UI:
- 開啟 application-service.conf 並搜尋「apollo.key」,您應該會看到別名已更新為您匯入的別名 (在本例中為萬用字元別名)。
- 使用文字編輯器打開standalone.xml,然後搜索「關鍵字別名」。您應該會看到類似於下面的一行,其中顯示了您導入的別名:
key-alias="${apollo.keystore.alias:emcdpa}"如果沒有,則必須更改金鑰別名以匹配與已簽名證書關聯的別名。另外,請仔細檢查密碼是否與您在整個過程中使用的密碼相同。
如果您必須變更這些檔案中的別名或密碼:停止應用程式服務、編輯並儲存檔案,然後重新啟動服務。如果問題仍然存在,請聯絡 DPA 支援。