Configuration Manager中的憑證設定檔簡介 - daniel-qa/Azure-Kubernetes-Service GitHub Wiki

用 openssl 將 pfx 憑證轉換 pem 和 key

  • 操作指令
1. openssl pkcs12 -in server.pfx -nocerts -out ExtractedPem.pem
2. openssl rsa -in ExtractedPem.pem -out server.key
3. openssl pkcs12 -in server.pfx -clcerts -nokeys -out serverCert.pem
  • 操作指令說明
 pfx, Azure導出pfx 預設沒有密碼

 在 1.中, Enter Import Password:  不需設置密碼
          Enter PEM pass phrase:   需設置一組密碼,因 pem 不能為空密碼

 在 2.中,使用 剛才設置的 PEM pass phrase,來產生 key

 執行完 2,3 後,應會產生四個檔案

<yourDownloadedKeyVaultCert>.pfx(原始 Key Vault 證書)

<yourExtractedPem>.pem(第一次加密.pem)

<yourNewKey>.key(我們解密.key自<yourExtractedPem>.pem)

<serverCert>.pem(我們從中提取的證書<yourDownloadedKeyVaultCert>.pfx) 

Nginx 設置 ssl 憑證

    ssl_certificate /etc/nginx/sites-available/serverCert.pem;
    ssl_certificate_key /etc/nginx/sites-available/server.key;

pfx,pem,key 說明

PFX(也称为 PKCS#12):

PFX 是一种包含私钥、公钥和证书链的加密文件格式。通常用于将证书和私钥捆绑到一个单独的文件中,以安全地传输或备份时保持完整性。
PFX 文件通常包括一个密码,用于加密私钥。这使得只有知道密码的人才能解密和使用私钥。

PEM:

PEM 是一种基于文本的格式,用于表示证书、私钥和其他加密信息。PEM 文件使用 BASE64 编码,并且通常以.pem为文件扩展名。
PEM 文件可以包含不同类型的数据,例如证书、私钥、证书签名请求(CSR)等。
PEM 格式的文件通常以 BEGIN 和 END 标记来标识其内容的类型。

Key:

Key 文件通常指的是仅包含私钥或公钥的文件。它们可以以多种格式存储,例如 PEM、DER 等。
如果是私钥,通常会需要额外的保护,如密码或其他加密机制,以防止未经授权的访问。
如果是公钥,则通常不需要额外的保护,因为公钥通常是用于加密或验证数据的。

简而言之,PFX 是一种用于捆绑私钥、公钥和证书链的二进制格式,
PEM 是一种基于文本的格式,用于表示加密信息,
而 Key 文件通常是特定类型的密钥文件,可能是私钥或公钥。

https://azureossd.github.io/2022/04/16/SSL-TLS-certificates-for-Apache-and-NGINX-on-Azure-VMs/

從 .pfx 提取密鑰 (.key) 和證書 (.pem) - *NIX 終端

運行以下命令以提取證書:

openssl pkcs12 -in yourDownloadedKeyVaultCert.pfx -nocerts -out yourExtractedPem.pem

openssl pkcs12 -in yourDownloadedKeyVaultCert.pfx -nocerts -out ExtractedPem.pem

系統將提示您輸入導入密碼和 PEM 密碼短語。

 Enter Import Password:
 Enter PEM pass phrase:
 Verifying - Enter PEM pass phrase:

最初從 Azure 下載證書時,導入密碼默認為空,如此處所示

必須 PEM pass phrase 設置,不能留空。設置密碼短語並再次輸入以驗證它。

下一步運行 openssl rsa -in yourExtractedPem.pem -out yourNewKey.key 以獲取.key文件。系統將再次提示您pass phrase應該與步驟 2 中設置的相同。

openssl rsa -in yourExtractedPem.pem -out yourNewKey.key

最後,獲取服務器證書

openssl pkcs12 -in yourDownloadedKeyVaultCert.pfx -clcerts -nokeys -out serverCert.pem

系統將再次提示您輸入一個Import Password,這是用於原始 Key Vault 證書的證書。如上所述,默認情況下這是空的,因此將提示留空並按回車鍵。

您總共應該有 4 個文件,我們需要將其中 2 個文件帶到我們的虛擬機中。

<yourDownloadedKeyVaultCert>.pfx(原始 Key Vault 證書)

<yourExtractedPem>.pem(第一次加密.pem)

<yourNewKey>.key(我們解密.key自<yourExtractedPem>.pem)

<serverCert>.pem(我們從中提取的證書<yourDownloadedKeyVaultCert>.pfx)

我們需要將.key和.pem帶到虛擬機。

  • Nginx 設置
ssl_certificate /etc/ssl/serverCert.pem;
ssl_certificate_key /etc/ssl/server.key;

https://learn.microsoft.com/zh-tw/mem/configmgr/protect/deploy-use/introduction-to-certificate-profiles

Configuration Manager中的憑證設定檔簡介

憑證設定檔有三種類型:

  • 信任的 CA 憑證:部署受信任的根 CA 或中繼 CA 憑證。 當裝置必須驗證服務器時,這些憑證會形成信任鏈結。

  • 簡單的憑證註冊通訊協定 (SCEP):使用 SCEP 通訊協定要求裝置或使用者的憑證。 在執行 R2 或更新版本的伺服器上,此類型需要網路裝置註冊服務 (NDES Windows Server 2012) 角色。

若要建立 簡單憑證註冊通訊協定 (SCEP) 憑證設定檔,請先建立 信任的 CA 憑證 設定檔。

  • 個人資訊交換 (.pfx):要求裝置或使用者的 .pfx (也稱為 PKCS #12) 憑證。 建立 PFX 憑證設定檔的方法有兩種:

 從現有憑證匯入認證 > 定義用來處理要求的憑證發行 機構單位

⚠️ **GitHub.com Fallback** ⚠️