簡介
本文檔介紹如何為Industrial Network Director(IND)和Identity Services Engine之間的pxGrid整合建立SAN證書。
背景資訊
在Cisco ISE中為pxGrid使用建立證書時,無法將伺服器短主機名輸入到ISE GUI中,因為ISE僅允許FQDN或IP地址。
若要建立包含主機名和FQDN的證書,必須在ISE之外建立證書請求檔案。可以使用OpenSSL建立證書簽名請求(CSR)以及使用者替代名稱(SAN)欄位條目。
本文檔不包括在IND伺服器和ISE伺服器之間啟用pxGrid通訊的全面步驟。 在配置pxGrid並確認需要伺服器主機名後,可以使用這些步驟。 如果在ISE探查器日誌檔案中發現此錯誤,通訊需要主機名證書。
Unable to get sync statusjava.security.cert.CertificateException: No subject alternative DNS name matching <IND server hostname> found.
有關使用pxGrid通訊的IND初始部署步驟,請訪問https://www.cisco.com/c/dam/en/us/td/docs/switches/ind/install/IND_PxGrid_Registration_Guide_Final.pdf
需要的應用程式
- Cisco Industrial Network Director(IND)
- 思科身分識別服務引擎(ISE)
- OpenSSL
其他資訊
就本檔案而言,使用下列詳細資訊:
- IND伺服器主機名:rch-mas-ind
- FQDN:rch-mas-ind.cisco.com
- OpenSSL配置:rch-mas-ind.req
- 證書請求檔名: rch-mas-ind.csr
- 私鑰檔名:rch-mas-ind.pem
- 證書檔名: rch-mas-ind.cer
流程步驟
建立證書CSR
- 在安裝了OpenSSL的系統上,為OpenSSL選項(包括SAN資訊)建立一個請求文本檔案。
- 大多數「_default」欄位是可選的,因為可以在步驟10中運行OpenSSL命令時輸入答#2。
- SAN詳細資訊(DNS.1、DNS.2)是必需的,必須包括DNS短主機名以及伺服器的FQDN。如果需要,可以使用DNS.3、DNS.4等新增其他DNS名稱。
- 請求檔案文本檔案示例:
[req] distinguished_name =名稱 req_extensions = v3_req [名稱] countryName =國家/地區名稱(2個字母代碼) countryName_default =美國 stateOrProvinceName =州或省名稱(全稱) stateOrProvinceName_default = TX localityName =城市 localityName_default = Cisco Lab organizationalUnitName =組織單位名稱(例如IT) organizationalUnitName_default = TAC commonName =公用名(例如,您的姓名) commonName_max = 64 commonName_default = rch-mas-ind.cisco.com emailAddress =電子郵件地址 emailAddress_max = 40 [v3_req] keyUsage = keyEncipherment, dataEncipherment extendedKeyUsage = serverAuth, clientAuth subjectAltName = @alt_names [alt_names] DNS.1 = rch-mas-ind DNS.2 = rch-mas-ind.cisco.com |
- 使用OpenSSL在SAN欄位中建立具有DNS短主機名的CSR。除CSR檔案外,再建立私密金鑰檔案。
- 指令:
openssl req -newkey rsa:2048 -keyout <server>.pem -out <server>.csr -config <server>.req
- 出現提示時,輸入您選擇的密碼。 請務必記住此密碼,如同在後續步驟中使用。
- 出現提示時輸入有效的電子郵件地址,或將該欄位留空,然後按<ENTER>鍵。
- 如果需要,請驗證CSR檔案資訊。對於SAN證書,請檢查「x509v3 Subject Alternative Name」(x509v3主題備用名稱),如本螢幕快照中突出顯示。
- 命令列:
openssl req -in <server>.csr -noout -text
- 在文本編輯器中開啟CSR檔案。 出於安全原因,示例螢幕截圖不完整且經過編輯。 實際產生的CSR檔案包含更多行。
- 將私鑰檔案(<server>.pem)複製到PC,就像在後續步驟中所使用的一樣。
使用思科ISE生成證書,使用建立的CSR檔案資訊
在ISE GUI中:
- 刪除現有的pxGrid客戶端。
- 導航到Administration > pxGrid Services > All Clients。
- 查詢並選擇現有的客戶機主機名(如果列出),
- 如果找到並選定,請按一下「刪除」按鈕,然後選擇「刪除選定項」。 根據需要進行確認。
- 建立新證書。
- 按一下pxGrid服務頁面上的「證書」(Certificates)頁籤。
- 選擇選項:
- 「我想」:
- "證書簽名請求詳細資訊:
- 從文字編輯器複製/貼上CSR詳細資訊。 務必包括BEGIN和END行。
- "證書下載格式"
- "隱私增強型電子郵件(PEM)格式的證書,PKCS8 PEM格式的金鑰。"
- 輸入證書密碼並加以確認。
- 按一下「建立」按鈕。
- 這會建立和下載包含憑證檔案以及憑證鏈結的其他檔案的ZIP檔案。開啟ZIP並解壓縮憑證。
- 檔名通常為<IND server fqdn>.cer
- 在ISE的某些版本中,檔名是<IND fqdn>_<IND短名稱>.cer
將新證書匯入到IND伺服器,並將其啟用以供pxGrid使用
在IND GUI中:
- 禁用pxGrid服務,以便可以匯入新證書並將其設定為活動證書。
- 導航到Settings > pxGrid。
- 按一下可禁用pxGrid。
- 將新證書匯入系統證書。
- 導覽至Settings > Certificate Management。
- 按一下「System Certificates(系統證書)」
- 按一下「Add Certificate」。
- 輸入證書名稱。
- 按一下「Certificate」左邊的「Browse」,然後找到新的證書檔案。
- 按一下「Certificate」左邊的「Browse」,然後找到建立CSR時儲存的私鑰。
- 輸入之前使用OpenSSL建立私鑰和CSR時使用的密碼。
- 按一下「上傳」。
- 將新證書匯入為受信任的證書。
- 導航到Settings > Certificate Management,點選Trusted Certificates。
- 按一下「Add Certificate」。
- 輸入證書名稱;該名稱必須不同於系統證書上使用的名稱。
- 按一下「Certificate」左側的「Browse」,然後找到新的證書檔案。
- 密碼欄位可以留空。
- 按一下「上傳」。
- 設定pxGrid以使用新證書。
- 導航到Settings(設定)> Certificate Management(證書管理),按一下Settings(設定)。
- 如果尚未完成,請選擇「pxGrid」下的「CA證書」。
- 選擇在證書匯入期間建立的系統證書名稱。
- 按一下「儲存」。
在ISE伺服器中啟用並註冊pxGrid
在IND GUI中:
- 導航到Settings > pxGrid。
- 按一下滑塊以啟用pxGrid。
- 如果這不是第一次在該IND伺服器上向ISE註冊pxGrid,請選擇「使用現有節點連線」。 自動填充IND節點和ISE伺服器資訊。
- 要註冊新的IND伺服器以使用pxGrid,如果需要,請選擇「註冊新節點」。 輸入IND節點名稱,並根據需要選擇ISE伺服器。
- 如果ISE伺服器未列在伺服器1或伺服器2的下拉選項中,則可以使用Settings > Policy Server將其新增為新的pxGrid伺服器
- 點選註冊(Register)。確認資訊會顯示在螢幕上。
在ISE伺服器中批准註冊請求
在ISE GUI中:
- 導航到Administration > pxGrid Services > All Clients。 待批准請求顯示為「待批准總數(1)」。
- 點選「待批准總數(1)」,然後選擇「全部批准」。
- 在顯示的彈出視窗中,按一下「全部批准」。
- IND伺服器顯示為客戶端,如下所示。
在IND伺服器中啟用pxGrid服務
在IND GUI中:
- 導航到Settings > pxGrid。
- 按一下「啟用」。
- 確認資訊會顯示在螢幕上。