自签名证书和您自己的CA签名的证书之间有区别吗?


11

我们需要在内部网络上将SSL用于一些敏感的应用程序,并且我需要知道自签名证书与我们设置的Windows Server CA签名证书之间是否有区别?我们需要设置CA吗?

Answers:


10

在短期内,单一服务没有太大区别。

如果您决定需要设置更多使用SSL的服务,则可能会发现设置CA将是一个更好的选择。

如果设置了CA,则应该能够使您的客户信任CA,从而信任它签署的所有证书。一旦他们建立了CA,就可以轻松添加其他服务。使用许多自签名证书,用户将不得不分别接受每个证书。

您是说您有Windows CA吗?如果您已经有一个,我会用它。如果您还没有,那么我很想使用TinyCA这样的轻量级系统,您可以在VM上运行,也可以在USB磁盘上的Linux上运行。


太棒了!那正是我一直在寻找的信息。
Max Schmeling

2

证书可能包含有关其被授权使用的信息,例如是否允许将其用于签署其他公共密钥证书,或者它是否是CA证书。某些实现可能会检查此类信息,并出于某些目的而拒绝接受证书而没有正确的信息

这些额外信息的示例包括:

  • “密钥用法”扩展名(OID 2.5.29.15),该扩展名可以指定是否允许将此证书用于密钥证书签名。
  • “基本约束”扩展(OID 2.5.29.19),用于指定这是否是CA证书。

如果要创建自己的自签名证书,并且想将其用作CA证书,并且希望增加将其与将要使用的任何软件一起接受的机会,则应确保它包含我上面提到的这两个扩展的正确配置的值。

如果省略这两个扩展,许多实现可能仍将其作为CA证书使用,但某些实现则可能没有。


0

如果要签署自己的证书,则需要一个CA(无论是您的证书还是正式的证书)。但是,除非计划签署多个证书并且只希望用户必须接受一个证书,否则您无需将CA推送给用户(即,如果他们安装了CA,则将接受您颁发的所有证书)。从长远来看,最好推CA。


-1

他们不是同一件事吗?由您自己的内部CA颁发的证书是“自签名”的,这意味着它不是由外部CA颁发的,对吗?


不可以。“自签名”属性与外部和内部CA无关。实际上,所有外部CA的根证书都是自签名的。只需转到任何SSL网站(例如google mail),然后检查证书链中的每个证书即可。
总统詹姆斯·莫文(James Moveon Polk)2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.