Windows上的SSL证书混乱(PFX)

我试图创build一个公司内部的CA来摆脱我们的服务器所需的所有SSLexception,但是在创build证书时,我对这样做的安全性提出了一些疑问。 我已经理解了如何做到这一点的方法是:

  • 使用CA标志创build自签名证书(openssl给我一个.pem和.key文件)作为ca.mycompany.org
  • 将这些文件转换为.pfx
  • 将.pem安装到我们客户的Firefox证书商店的可信根CA存储中
  • 在Windows客户端的系统可信根CA存储中安装.pfx(适用于IE和Chrome)
  • 为我们所有的内部服务器创build由ca.mycompany.org签名的证书

我现在的疑惑是:没有私钥就无法创build一个有效的PFX,而且一旦在PC上安装了证书,每个人都可以再次从信任库中导出PFX。 这意味着每个人在理论上都有权访问CA私钥,理论上可以颁发由我们新的内部CA签署的自己的证书。 这将打开所有的stream氓服务器和其他欺骗的门(因为最糟糕的攻击者经常来自内部…)

我很确定我的想法在某个地方出了问题,PFX / SSL概念不能被devise成有这么大的错误,但我似乎无法find我的错误。 请给我启示。

您应该只在客户机上安装CA的公钥,私钥永远不要离开CA计算机(除了当然的备份,应该放在安全的地方,理想情况是在远程位置)。

实际上,通常的做法是创build一个sub-ca在不同的机器上生成实际的证书,然后closuresroot-ca,并且只在再次打开时才为sub-ca创build新的证书。

只要在被盗用的情况下撤销子卡就容易得多。