PowerStore:如何將自我簽署叢集管理憑證更換為外部認證機構核發的憑證

摘要: 本文提供逐步指示,說明如何將用於管理的 PowerStore 自我簽署憑證更換為外部認證機構 (CA) 核發的憑證。

本文章適用於 本文章不適用於 本文無關於任何特定產品。 本文未識別所有產品版本。

說明

注意:一般來說,PowerStore 不支援第三方 CA 簽署 GUI 憑證。瀏覽器論壇禁止 CA 簽署憑證中含有受限制 IP 的憑證,由於私人 IP 包含在限制清單中,而且也是 PowerStore 憑證中的需求,CA 會拒絕要求。獲得由第三方 CA 簽名的證書的唯一可能性是使用 ISP 或 IANA 為管理網路提供的公共 IP。

本文是指由私有企業 CA 簽名的證書(例如,使用 OpenSSL、Microsoft CA 或類似內容) 

本文涵蓋 PowerStoreOS 2.1。如需較新版本的 PowerStore 作業系統,請參閱 PowerStore:建立與匯入簽署的 HTTPS 管理憑證

PowerStoreOS 2.1 版提供有限形式,以外部 CA 發出的憑證取代 PowerStore Management 自我簽署憑證的初始支援。
除了使用 HTTPS 保護使用者介面 (UI) 存取之外,叢集管理憑證還有其他用途,例如各種內部通訊等。

下列限制適用於 PowerStoreOS 2.1 版隨附的功能初次導入期間。

這些限制和限制適用於私人 CA 簽署伺服器憑證匯入的 PowerStoreOS 2.1.x 版。這些限制和限制不適用於 PowerStoreOS 3.0 版或更新版本。

  • 以下項目不支援第三方憑證匯入
    • 多應用裝置叢集
    • 與另一個叢集有複製關係的叢集
    • 已設定 SDNAS 的叢集
    • 統一系統 (檔案 + 區塊)
  • 匯入叢集的協力廠商憑證後,即不支援回復至原始的 PowerStore CA 簽署憑證。
  • 憑證到期時不會產生警示。
  • 要匯入的憑證至少應有效 30 天或更久。
  • 不支援使用 PowerStore Manager UI 匯入協力廠商憑證。
  • 協力廠商憑證匯入僅為管理流量 (Management_HTTP) 提供支援,而不支援任何其他服務 (例如 VASA、複寫等)。

重要:如果執行 PowerStoreOS 2.1,請完整檢閱並瞭解這些限制。如果您的系統屬於上述其中一個類別,請勿繼續。 

如何使用 PowerStore Manager 使用者介面匯入外部認證機構核發的憑證

手動 cli 程序僅適用於執行 PowerStoreOS 2.1 版的系統。
若為執行 PowerStoreOS v3 及更新版本的系統,請使用 PowerStore Manager 使用者介面匯入憑證。
如需詳細資訊,請參閱 PowerStore 安全性組態指南。

PowerStore Manager Web UI 簽署的叢集憑證視窗:
PowerStore Manager Web UI 簽署的叢集憑證視窗


如何使用 CLI 匯入外部認證機構頒發的憑證

步驟 1 - 擷取叢集 IPv4/IPv6 位址

第一個步驟是擷取叢集 IPv4/IPv6 (管理) 位址。此 IP 內嵌在目前的自我簽署管理憑證中。這也是您在瀏覽器中輸入的相同 IP 位址,以連線至 PowerStore Manager 使用者介面。

步驟 1a

擷取所有憑證的清單。

$ pstcli -u admin -p <password> -d <cluster_ip> x509_certificate show

 #  |                  id                  |  type  |     service      | is_current | is_valid
----+--------------------------------------+--------+------------------+------------+----------
  1 | 00907634-b4eb-446a-a381-aae685bae066 | Server | Management_HTTP  | yes        | yes
  2 | 9d0ec275-3688-4ae2-922b-639e1cfb0b88 | Server | VASA_HTTP        | yes        | yes
  3 | c5f03cf7-fe1d-40bd-b6fb-7abba0c6026a | Client | Replication_HTTP | yes        | yes
      <trimmed for brevity>

記下具有服務Management_HTTP伺服器類型的證書的 id 欄位。

步驟 1b

取得目前自我簽署管理憑證的完整詳細資料。
執行下列命令,將 id 更換為您在步驟 1a 中擷取的值。

 
$  pstcli -u admin -p <password> -d <cluster_ip> x509_certificate -id 00907634-b4eb-446a-a381-aae685bae066 show

id           = 00907634-b4eb-446a-a381-aae685bae066
type         = Server
type_l10n    = Server
service      = Management_HTTP
service_l10n = Management_HTTP
is_current   = yes
is_valid     = yes
members:
  subject                   = CN=Dell EMC PowerStore CA E79NFK8T,O=Dell EMC,ST=MA,C=US
  serial_number             = 14daac34e1db4711
  signature_algorithm       = SHA384withRSA
  issuer                    = CN=Dell EMC PowerStore CA E79NFK8T,O=Dell EMC,ST=MA,C=US
  valid_from                = 11/16/21 23:16:33
  valid_to                  = 10/30/89 23:16:33
  public_key_algorithm      = RSA
  key_length                = 4096
  thumbprint_algorithm      = SHA-256
  thumbprint_algorithm_l10n = SHA-256
  thumbprint                = 279ea39ad7b8d2e0f3695a850a7d302e8318e080e1092fccb314c8f4f19e50a4
  certificate               = MIIFdDCCA1ygAwIBAgIIFNqsNOHbRxEwDQYJKoZIhvcNAQEMBQAwVzELMAkGA1UEBhMCVVMxCzAJBg
                              <trimmed for brevity>
                              Ar4eTY0aBe7R8fnSbg97EFqF+1gGhKlxrOU9AICgZJDh0PDQJRcYLFJBi36Ktt++mtRgpSig8VvypZ
  depth                     = 2
  subject_alternative_names =

  subject                   = C=US+O=Dell+L=Hopkinton+OU=PowerStore+ST=Massachusetts+CN=ManagementHTTP.xxxxxxxxxxxx
  serial_number             = xxxxxxxxxxxxx
  signature_algorithm       = SHA256withRSA
  issuer                    = CN=Dell EMC PowerStore CA E79NFK8T,O=Dell EMC,ST=MA,C=US
  valid_from                = 11/16/21 23:56:23
  valid_to                  = 11/15/26 23:56:23
  public_key_algorithm      = RSA
  key_length                = 4096
  thumbprint_algorithm      = SHA-256
  thumbprint_algorithm_l10n = SHA-256
  thumbprint                = eedf2f9c1d0f70f018857110e87cd122f4fa31140e694c30b5ea10398629dbf1
  certificate               = MIIFejCCA2KgAwIBAgIJANlUDR+8+78qMA0GCSqGSIb3DQEBCwUAMFcxCzAJBgNVBAYTAlVTMQswCQ
                              <trimmed for brevity>
                              ZTShTW0BFh3IeAgt23Tlhz+npsJNqbvxXB+8hXqvNWcpzeSluiUalqB3qU9MwCzwHpEkXqagzk8EZM
  depth                     = 1
  subject_alternative_names = aaa.bbb.ccc.ddd, 1111:2222:3333:4444:5555:6666:7777:8888
您會在輸出中取得兩個憑證:PowerStore 內部 CA 和由該內部 CA 簽署的管理憑證。
管理憑證 的深度 = 1 欄位, subject_alternative_names 欄位會填入 IPv4 和 IPv6 IP 位址。
如果您使用 IPv4 來管理叢集,您應該會看到 IPv4 叢集管理 IP 是 subject_alternative_names 欄位中的第一個 (如以上範例所示 - aaa.bbb.ccc.ddd)。如果您使用 IPv6 來管理叢集,請寫下 第一個 IPv6 位址。
注意:subject_alternative_names欄位中的第二個 IPv6 位址是叢集內管理 (ICM) 位址,當您在下一個步驟中產生 CSR 時會自動填入。沒有必要寫下來。

步驟 2 - 產生憑證簽署要求 (CSR)

如何產生 CSR,該 CSR 稍後會導入到認證機構進行簽署。

步驟 2a

執行下列命令,以產生產生 CSR 的說明,並熟悉其語法:


  
$ pstcli -u admin -p <password> -d <cluster_ip> help x509_certificate csr

x509_certificate csr -type { Server | Client | CA_Client_Validation | CA_Server_Validation } -service { Management_HTTP | Replication_HTTP | VASA_HTTP | Import_HTTP | LDAP_HTTP | Encrypt_HTTP | Syslog_HTTP } -dns_name <value>,...
-ip_addresses <value>,... -key_length <2048..4096> [ -scope <value> ] [ -common_name <value> ] [ -organizational_unit <value> ] [ -organization <value> ] [ -locality <value> ] [ -state <value> ] [ -country <value> ] [ { -passphrase
<value> | -passphraseSecure } ] [ -async ]
<trimmed for brevity>
 

以上粗體選項為必填,所有其他選項均為選用選項。如果您的公司證書策略需要使用這些可選欄位中的任何一個,請諮詢您的 CA 或 PKI 管理員。

注意:將 FQDN (例如 powerstore.mycompany.com) 放入 -common_name 或 CN 欄位是廣泛接受的實務。

步驟 2b

使用上述準則產生 CSR。

 
$ pstcli -u admin -p <password> -d <cluster_ip> x509_certificate csr -type Server -service Management_HTTP -dns_name "powerstoreXY.mycompany.com" -ip_addresses aaa.bbb.ccc.ddd -key_length 2048 -scope "External" -common_name "powerstoreXY.mycompany.com"
 


命令的輸出會以 BASE64 編碼傳回 id 和 CSR。例如:


  
  1 | 81ea4b51-4b80-4a88-87f1-f0a0ddd1c1fd | Server | Management_HTTP | Management_HTTP | no         | no       | -----BEGIN CERTIFICATE REQUEST-----
MIIDJTCCAg0CAQAwezF5MAkGA1UEBhMCVVMwCwYDVQQKEwREZWxsMBAGA1UEBxMJ
<trimmed for brevity>
h4t6QVXny+nF25XASq49kuZ8aWA0aTwU8VN5lC0qbSA2Zy6uX8jPmf/ecGNSQzIc
6iDIm76HbL7UKlDecSmr7WiR5hZ9bP/zKxmkNlTN1viqtInGl+zZa6U= -----END CERTIFICATE REQUEST-----


複製您在輸出中收到的 ID (如以上粗體所示),因為後續步驟需要使用該 ID

您也必須設定 CSR 格式 (使用 VIM 或任何文字編輯器,例如記事本)。第一行必須為 -----BEGIN CERTIFICATE REQUEST-----而最後一行必須以 -----END CERTIFICATE REQUEST----- 結束。任何地方都不能有前導或結束空格。

格式化的 CSR 範例:

-----BEGIN CERTIFICATE REQUEST-----
MIIDJTCCAg0CAQAwezF5MAkGA1UEBhMCVVMwCwYDVQQKEwREZWxsMBAGA1UEBxMJ
SG9wa2ludG9uMBEGA1UECxMKUG93ZXJTdG9yZTAUBgNVBAgTDU1hc3NhY2h1c2V0
<trimmed for brevity>
h4t6QVXny+nF25XASq49kuZ8aWA0aTwU8VN5lC0qbSA2Zy6uX8jPmf/ecGNSQzIc
6iDIm76HbL7UKlDecSmr7WiR5hZ9bP/zKxmkNlTN1viqtInGl+zZa6U=
-----END CERTIFICATE REQUEST-----
 
將您的 CSR 儲存在名稱有意義的檔案中。例如: powerstoreXY.csr

步驟 2c (選用)

如果您確信您的 CSR 格式正確,則可以跳過此步驟。

如果您想驗證它的有效性,您可以使用OpenSSL工具套件來確認它可以被讀取,並且CSR欄位中的數據看起來正確。例如,使用步驟 2b 中提供的值,CSR 中粗體欄位應反映以下內容:


  
$ openssl req -in powerstoreXY.csr -noout -text

Certificate Request:
    Data:
        Version: 0 (0x0)
        Subject: C=US, O=Dell, L=Hopkinton, OU=PowerStore, ST=Massachusetts, CN=powerstoreXY.mycompany.com
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (2048 bit)
                Modulus:
                    00:af:cd:73:7a:d7:71:03:67:d6:f9:46:9f:aa:68:
                    <trimmed for brevity>
                    90:c4:68:44:71:bd:d7:64:65:81:36:90:2e:c2:15:
                    b8:f5
                Exponent: 65537 (0x10001)
        Attributes:
        Requested Extensions:
            X509v3 Subject Alternative Name:
                DNS:powerstoreXY.mycompany.com, IP Address:aaa.bbb.ccc.ddd, IP Address:1111:2222:3333:4444:5555:6666:7777:8888
    Signature Algorithm: sha256WithRSAEncryption
         15:f6:08:8e:ab:f6:07:91:82:ed:45:f0:d9:4d:8c:f5:c6:e3:
         <trimmed for brevity
         16:7d:6c:ff:f3:2b:19:a4:36:54:cd:d6:f8:aa:b4:89:c6:97:
         ec:d9:6b:a5



如果一切看起來都正確,請前往下一個步驟。

步驟 3 - 將 CSR 提交至私有 CA 以進行簽署

此步驟因廠商而異。此處的目標是使用廠商的建議程序將您的 CSR 提交給核發認證機構,以接收編碼為 BASE64 的已簽署憑證。

步驟 3a

確認新核發的憑證使用 BASE64 編碼。請確定檔案開頭為 -----BEGIN CERTIFICATE-----並以 -----END CERTIFICATE-----結尾,且兩者之間包含編碼資料。

 
$ cat powerstoreXY.cer
-----BEGIN CERTIFICATE-----
MIIGFjCCA/6gAwIBAgITdAAAAA4SiEpOgIXLggABAAAADjANBgkqhkiG9w0BAQsF
<trimmed for brevity>
7NcBrSr0Ach8rC443vrqLSChaTZFt1TtYiSJJT+ZEL2F0/TG9BTXBbHKFTVFXgf9
l9dWpDkH6mq/fhgaMNT/vuMCUtD40fj81DE=
-----END CERTIFICATE-----
步驟 3b

確認您收到的憑證包含您在產生 CSR 時所要求的屬性值,特別是 DNS 和主體別名中的 IP 位址。依認證機構產生和簽署憑證所涉及的程序而定,憑證不一定會包含這些程序。


  
$ openssl x509 -in powerstoreXY.cer -noout -text
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number:
            74:00:00:00:0e:12:88:4a:4e:80:85:cb:82:00:01:00:00:00:0e
    Signature Algorithm: sha256WithRSAEncryption
        Issuer: DC=com, DC=mycompany, CN=Issuing CA
        Validity
            Not Before: Nov 26 16:51:16 2021 GMT
            Not After : Nov 26 16:51:16 2023 GMT
        Subject: C=US, ST=Massachusetts, L=Hopkinton, O=Dell, OU=PowerStore, CN=powerstoreXY.mycompany.com
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (2048 bit)
                Modulus:
                    00:af:cd:73:7a:d7:71:03:67:d6:f9:46:9f:aa:68:
                    <trimmed for brevity>
                    90:c4:68:44:71:bd:d7:64:65:81:36:90:2e:c2:15:
                    b8:f5
                Exponent: 65537 (0x10001)
        X509v3 extensions:
            X509v3 Subject Alternative Name:
                DNS:powerstoreXY.mycompany.com, IP Address:aaa.bbb.ccc.ddd, IP Address:1111:2222:3333:4444:5555:6666:7777:8888
            X509v3 Subject Key Identifier:
                1C:19:5D:DF:B4:F0:9F:B7:7B:2B:4A:0E:09:B3:C6:43:3E:CF:4D:4C
            X509v3 Authority Key Identifier:
                keyid:25:D0:D5:01:27:75:BD:08:FF:E7:FF:02:6C:CE:17:46:86:50:DD:71

            X509v3 CRL Distribution Points:

                Full Name:
                  URI:http://pki.mycompany.com/pki/Issuing%20CA.crl

            Authority Information Access:
                CA Issuers - URI:http://pki.mycompany.com/pki/ca-iss.mycompany.com_Issuing%20CA.crt

            1.3.6.1.4.1.311.20.2:
                ...W.e.b.S.e.r.v.e.r
            X509v3 Key Usage: critical
                Digital Signature, Key Encipherment
            X509v3 Extended Key Usage:
                TLS Web Server Authentication
    Signature Algorithm: sha256WithRSAEncryption
         99:d9:99:a7:7a:b9:4a:e8:e3:66:ed:56:1f:6f:bc:71:b8:07:
         <trimmed for brevity>
         97:d7:56:a4:39:07:ea:6a:bf:7e:18:1a:30:d4:ff:be:e3:02:
         52:d0:f8:d1:f8:fc:d4:31

  

如果您在憑證的 X509v3 主體別名 (如上粗體所示) 中未看到您在 CSR 中要求的 DNS 和 IP 屬性,請洽詢您的 CA 系統管理員以解決此問題。
在您確認憑證中存在所需的屬性之前,請勿繼續。

步驟 3c

此步驟包含在單一 BASE64 編碼檔案中建立完整的憑證鏈結,其中必須包含您的 PowerStore 憑證加上在簽署憑證時所涉及的階層中每個 CA 憑證。

使用由下列實體組成的假設性公開金鑰基礎結構 (PKI):

根 CA > 發出 CA > 分葉

其中

  • 根 CA - 是層次結構的頂端,它僅為頒發 CA 簽署和頒發證書。它通常從不參與簽署端點的證書。
  • 頒發 CA - 這是通常向各種終結點頒發證書的方式。
  • - 端點,例如工作站、伺服器等。您的 PowerStore 系統便屬於此類別。
注意:組合時,應與上面列出的順序相反。從頂部的葉開始,然後是頒發 CA,以及檔末尾的根 CA。有關合併證書資訊的詳細資訊,請參閱下文。


視 PowerStore 憑證的核發方式而定,您收到的檔案可能僅包含 PowerStore 端點的單一憑證 (葉),也可能包含整個鏈結 (葉 + issuingCA + rootCA)。在後續步驟中,您無法將只包含單一分葉憑證的檔案匯入 PowerStore。必須將完整的鏈(葉 + 頒發 CA + rootCA)創建為一個包含所有三個(或更多,如果鏈中有更多 CA)證書的 BASE64 編碼 PEM 檔。

如果您還沒有,您必須取得核發 CA 和根 CA 的 BASE64 編碼憑證,並將它們與 PowerStore 的分葉憑證合併為一個 PEM 檔案:


  
$ cat powerstoreXY.cer issuingca.cer rootca.cer > combined.pem
使用文字編輯器開啟 combined.pem 檔案,並移除任何結尾或前置空格及空白行。此外,證書的正文(開始/結束證書標記之間的數據)必須是單行字串。
產生的 combined.pem 檔案應類似於以下範例:

  
$ cat combined.pem
-----BEGIN CERTIFICATE-----
MIIGFjCCA/6gAwIBAgITdAAAAkiG9w0BAQs<trimmed for brevity><PowerStore leaf cert>7NcBrSr0Ach8rC443vrqLSChaTZF0fj81DE=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIGXjCCBEagAwIBDANBgkqhkiG9w0BAQ0F<trimmed for brevity><Issuing CA cert>HU+TePFvwmGruno8fGI4iLyh5kWjnWW2SZVI4wWQ=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIFCzCCAvOgAwIyoqhkiG9w0BAQ0FAuDAX<trimmed for brevity><Root CA cert>wRh/EXhVd32yvTxupm288LcH3UU3iGHx0tHieAGEkT0=
-----END CERTIFICATE-----
 

步驟 4 - 匯入簽署的憑證鏈結

在此最後步驟中,您將匯入完整的鏈結以取代 PowerStore 自我簽署憑證,這些鏈結包含新簽署的憑證和所有 CA。您需要在步驟 2b 中生成的證書 ID

如果未將其寫下來,請運行以下命令以再次獲取該 ID:


  
$ pstcli -u admin -p <password> -d <cluster_ip> x509_certificate show
 #  |                  id                  |  type  |     service      | is_current | is_valid
----+--------------------------------------+--------+------------------+------------+----------
  1 | 81ea4b51-4b80-4a88-87f1-f0a0ddd1c1fd | Server | Management_HTTP  | no         | no
  2 | 00907634-b4eb-446a-a381-aae685bae066 | Server | Management_HTTP  | yes        | yes
  3 | c5f03cf7-fe1d-40bd-b6fb-7abba0c6026a | Client | Replication_HTTP | yes        | yes
  4 | 9d0ec275-3688-4ae2-922b-639e1cfb0b88 | Server | VASA_HTTP        | yes        | yes


  


請注意,服務 Management_HTTP憑證無效且非最新。在上述範例中,您需要的 id 81ea4b51-4b80-4a88-87f1-f0a0ddd1c1fd

執行下列命令以匯入鏈結:


  
$ pstcli -u admin -p <password> -d <cluster_id> x509_certificate -id <cert_id> set -is_current true -certificate '<contents_of_the_combined.pem_file>'

  
注意:所需的換行符必須為“\n”。


例如:


  
pstcli -u admin -d self x509_certificate -id 81ea4b51-4b80-4a88-87f1-f0a0ddd1c1fd set -is_current true -certificate $'-----BEGIN CERTIFICATE-----\n[...Single line PowerStore certificate content...]\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\n[...Single line CA Certificate certificate content...] \n-----END CERTIFICATE-----'
或者,當使用具有 PSTCLI 的 Linux 工作站時 (例如 PowerStore 上的 SSH),您可以告訴 BASH 解釋器完全按原樣使用 $' ' 之間的任何內容,包括格式。在這種情況下,不需要附加「new行\n」:

  
pstcli -u admin -d self x509_certificate -id 81ea4b51-4b80-4a88-87f1-f0a0ddd1c1fd set -is_current true -certificate $'-----BEGIN CERTIFICATE-----
MIIGFjCCA/6gAwIBAgITdAAAAA4SiEpOgIXLggABAAAADjANBgkqhkiG9w0BAQsF<trimmed for brevity><PowerStore leaf cert>7NcBrSr0Ach8rC443vrqLSChaTZFt1TtYiSJJT+ZEL2F0/TG9BTXBbHKFTVFXgf9l9dWpDkH6mq/fhgaMNT/vuMCUtD40fj81DE=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIGXjCCBEagAwIBAgITQgAAAARkLTTf7tqFAQAAAAAABDANBgkqhkiG9w0BAQ0F<trimmed for brevity><Issuing CA cert>HU+TePFvwmGruno8o65kK+qWvvYG10PbMbIYxxm/zyofGI4iLyh5kWjnWW2SZVI4wWQ=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIFCzCCAvOgAwIBAgIQad6TNg7Pqa5HsuYzLFAK5jANBgkqhkiG9w0BAQ0FADAX<trimmed for brevity><Root CA cert>wRh/EXhVd32yvTxOdBGBBENLQnD6U6HkA4FO/jVbXR2B793giBmi9w85+B7obgWPSTypIgA+LKG3nE0jf5AW5LnOV+gQDCOsSJlGpm288LcH3UU3iGHx0tHieAGEkT0=
-----END CERTIFICATE-----'


此時,您應該已經安裝並運行了新證書。您必須關閉並重新啟動瀏覽器,才能查看新憑證。重新連接 PSTCLI 也會警告您憑證指紋已變更,這是已成功安裝新憑證的指示。


受影響的產品

PowerStore
文章屬性
文章編號: 000193886
文章類型: How To
上次修改時間: 31 10月 2025
版本:  11
向其他 Dell 使用者尋求您問題的答案
支援服務
檢查您的裝置是否在支援服務的涵蓋範圍內。