跟进另一个问题的评论。
有什么理由可以将自己作为根 CA 安装在自己的网络上吗?我能想到的唯一原因是强制网络中的计算机信任您自己的自签名证书,而不是让它们由第 3 方 CA 进行数字签名。
跟进另一个问题的评论。
有什么理由可以将自己作为根 CA 安装在自己的网络上吗?我能想到的唯一原因是强制网络中的计算机信任您自己的自签名证书,而不是让它们由第 3 方 CA 进行数字签名。
如果要在公司 Intranet 上使用 https,则需要自定义 CA。第三方 CA 只能为您提供公共域的证书。他们不会为您提供intranet.local
仅在您自己的网络中路由的任何其他主机名的证书。因此,当您想要为您的 Intranet 或您自己的服务器的 Web 界面拥有一个证书时,您需要添加一个自定义 CA 并自己签名。
您可能会问自己“我为什么要在自己的网络上使用 https”?当前的趋势是将所有内容都实现为基于浏览器的应用程序。这意味着越来越多的流程是通过内部 Web 界面处理的,包括敏感的。例如,我们公司目前正在实施一个基于 Web 的 Intranet 应用程序来查看我们自己的工资单(希望只有我们自己的)。但是在较大的组织中,内部网络可能变得如此庞大和复杂,以至于您不能再真正谈论私有 LAN。内部攻击者的窃听成为一种无法避免的可能性,因此内部加密成为一种合理的预防措施。
证书是一个信任问题。
CA 应该在全球范围内是值得信赖的,因此即使我们彼此不认识,我们也可以依赖它们。
如果您只与您认识的人或......不知道。
例如,当您想通过 openVPN 在您管理的计算机之间创建隧道时。
另一个(附加)答案是私有 CA 的安全域与公共 CA 不同。
公共 CA 将证明公共信息:私钥匹配的所有者在请求时具有特定的公共权利这一事实。他们并不真正关心内部隔离,也绝对不会保护内部资源(例如,@Philipp 提供的关于不属于公共 DNS 的主机名的示例)。
私有 CA 就是为了保护您的内部资源:它旨在拥有更有限的应用领域:它只能在您的网络环境中工作。因此,它可以用来保护内部通信并提供在网络之外几乎没有意义的内部身份验证。
此外,它们使用起来更安全:您可以使用它们更轻松地委派访问权限。例如,本地分支机构的管理员可以拥有为他控制的系统和人员颁发证书的必要权利,而无需将完整的公司身份委托给他。