对于内联网服务器,你会购买一个SSL证书或使用自签名证书?

我们有一个web服务,我们的应用程序使用和开发人员需要https连接到web服务。 由于这是一个内部的webservice你会使用自签名的证书吗?

我不是创build一个自签名证书,而是创build一个本地根CA,然后从中生成SSL证书,确保所有内部系统都拥有根CA公钥的副本。

以这种方式生成的密钥在普通HTTPS之外有很多用途,它们也可用于OpenVPN,POP3S,SMTPS等,即使对于各个SMIME帐户也是如此。

对于你的组织来说,拥有一个单一的根CA要比被认可的CA支付赎金要好得多,他们会为你想要证书的每台服务器收取费用,如果你想要的话,敢于向你收取“许可费”将相同的证书放在负载平衡群集中的多个服务器上。

尝试CAcert 。 他们是免费的,你只需要安装根。 一步上面有自签名证书。

如果成本是一个问题,并且您是以Windows为中心的,正如Denny先生所build议的那样,请使用Microsoft证书服务并将证书部署为默认域GPO的一部分。 你可能需要三个系统,但是可能是虚拟机。 您将需要根CA,它只能用于颁发中间CA的证书。 您应该有一个中间CA作为企业CA,然后第三个作为“独立”CA,因此您可以颁发证书给非域名资产。

如果你有很多客户,而且你足够大,你可以考虑从一个第三方解决scheme获得一个根,并从CA获得自己的证书,证书从第三方获得。 这样你就不必部署CA的证书。 例如, GeoTrust有一个解决scheme。

对于初学者证书的低价格,像rapidssl,我可能会购买其中的一个,至less如果你只需要最小的数量。 我觉得值得花费小的费用来阻止用户被要求接受不可信的自签名证书,因为它总是会导致一些非技术用户的问题。

假设您是桌面的Windows域,请在内部安装一个Windows CA,这个Windows CA将通过AD自动被公司中的所有计算机信任。 这样,您可以颁发证书到您需要的任何内部应用程序,而无需购买证书。

通常,是的,我会使用一个自签名的PEM证书来做这种事情。 但是,您的Intranet上的网站有多敏感? 对于实际签署证书的机器,以及其他可能适用或不适用的机器,都有很好的做法。

另外,如何为用户configuration内部CA存储? 一旦你接受了一个证书,你就会知道它是否会改变。这将我带回到涉及机器的良好实践中,这些机器实际上已经签了名(即签名,然后拔下)。

如果你正确地pipe理它,它有方便的拥有你自己的内部CA. 请提供更多信息。

自签证书的问题是客户通常会发出关于未经validation的警告。 根据安全设置,有些可能会完全阻止它。

如果这纯粹是内部需求,为什么甚至使用http instaed的http?

就我个人而言,我会坚持http或购买便宜的证书(他们并不昂贵)。