AFA*_*Med 26 ssl sni subject-alternative-names
有人可以以简化的方式向我解释这些证书之间的区别吗?我读了一些文章,但听起来他们做同样的工作,即用一个证书加密多个域。
Håk*_*ist 43
SAN(主题备用名称)是X509 证书规范的一部分,其中证书有一个字段,其中包含对主题也有效的备用名称列表(除了单个通用名称 / CN)。此字段和通配符名称本质上是将一个证书用于多个名称的两种方式。
SNI(服务器名称指示)是一种TLS 协议扩展,类似于 HTTP 主机标头的 TLS 协议。当客户端发送它时,它允许服务器选择正确的证书来呈现给客户端,而没有在服务器端使用单独的 IP 地址的限制(很像 HTTP Host 标头如何大量用于纯 HTTP)。
请注意,SNI 并没有反映在证书中,它实际上实现了与问题要求相反的内容;它简化了拥有许多证书,而不是将一个证书用于许多事情。
另一方面,这在很大程度上取决于哪种路径实际上更可取。例如,如果您需要不同实体的证书,问题几乎肯定不是您真正想要的。
dro*_*kie 19
SAN代表Subject Alternative Name,它是一个 x509 证书属性,而SNI是 SSL/TLS 客户端可以支持的一个特性,因此是一个完全不同的实体。
使用带有SAN的证书,即使客户端不支持SNI,您也可以在一个 IP 地址上托管多个启用 HTTPS 的站点。在这种情况下,您为所有站点持有一个证书,并且此类证书必须包含所有站点名称(Apache 坐标中或Nginx中的ServerName
s 或ServerAlias
es server_name
),因为它是SANs。这是传统方法的一个子集,该方法确实扩展了“每个单独 IP 地址上的一个启用 HTTPS 的站点”。目前,只有大型 CDN 坚持使用SAN。
使用SNI,您还可以在一个 IP 上托管多个启用 HTTPS 的站点,您为每个站点持有一个单独的 x509 证书,并且这些都没有在其SAN属性中提及其他站点名称,而是 TLS 客户端(即浏览器和控制台客户端,例如wget
或curl
)必须支持SNI。这是一种现代方法,因为最后一个不支持SNI开箱即用的操作系统是带有 IE 6.x 的 Windows XP,如果我没记错的话。现在你可以看到SAN财产,如果您购买的通配符证书-例如这样的证书*.example.com
将包含一个通用名的*.example.com
和SAN的example.com
。
这混合了证书过程的两个部分。
SAN 是主题备用名称。这是一种为多个域创建一个证书的方法。您只需将需要证书的其他域添加到证书中的 SAN 字段即可。然后浏览器也将接受这些域的有效性。
SNI 是服务器名称指示,是 TLS 的一部分。它允许您在单个 IP 上托管多个启用 TLS 的站点,因为所需的服务器名称是通过 TLS 握手发送的,并且服务器可以选择正确的证书作为答案。
归档时间: |
|
查看次数: |
27298 次 |
最近记录: |