Windows

關於 Windows 上的 SSL 證書的困惑 (PFX)

  • March 13, 2017

我正在嘗試創建一個公司內部的 CA 來消除我們伺服器所需的所有 SSL 異常,但是在創建證書時,我對這樣做的安全影響有些懷疑。我理解這需要如何完成的方式是:

  • 創建帶有 CA 標誌的自簽名證書(openssl 給了我一個 .pem 和 .key 文件)作為 ca.mycompany.org
  • 將這些文件滾動到 .pfx
  • 在我們客戶的 Firefox 證書儲存的受信任根 CA 儲存中安裝 .pem
  • 在我們的 Windows 客戶端(適用於 IE 和 Chrome)的系統受信任的根 CA 儲存中安裝 .pfx
  • 為我們所有的內部伺服器創建由 ca.mycompany.org 簽名的證書

我現在的疑慮來自於此:沒有私鑰就不可能創建有效的 PFX - 一旦在 PC 上安裝了證書,每個人都可以再次從信任庫中導出 PFX。這意味著,理論上每個人都可以訪問 CA 私鑰,並且理論上可以頒發由我們新的內部 CA 簽名的自己的證書。這將為流氓伺服器和其他詭計打開所有大門(因為最糟糕的攻擊者通常來自內部……)

我很確定我的想法在某個地方出現了錯誤,PFX/SSL 概念的設計不可能有這麼大的錯誤,但我似乎找不到我的錯誤。請賜予我啟迪。

您應該只在客戶端上安裝 CA 的公鑰,私鑰永遠不應該離開 CA 電腦(當然除了備份,它應該放在保險箱中,最好放在遠端位置)。

實際上,通常的做法是創建一個 sub-ca 以在不同的機器上生成實際的證書,然後關閉 root-ca 並僅在它們過期時再次打開它以便為 sub-ca 創建新證書。

如果 sub-ca 遭到破壞,撤銷 sub-ca 要容易得多。

引用自:https://serverfault.com/questions/837922