我可以在同一个域的多个主机名上使用单个(非通配符)SSL证书吗?

如果我有prod.example.comprod.example.com (两个主机名,但是相同的域名),我可以在两台机器上使用相同的SSL证书吗?

在过去,当我尝试在prod.example.com上使用prod.example.com证书时,它导致了浏览器对主机不匹配的警告,这使我相信我需要一个通配符(或多个不同的证书)。 (也许我的错误是在为prod.example.com生成CSR而不是简单的example.com ?)

但各个SSL供应商的网站提到需要通配符证书的子域 ,这是不是我所使用的。

他们的语言是不正确的? (我的愤世嫉俗的一面想知道这是否有助于供应商出售更昂贵的证书…)

您需要一个支持“主题备用名称”字段的证书,并且您将拥有test.example.com,以便在您所描述的示例中工作。

example.com的证书不会像你所描述的那样神奇地为*.example.com工作,除非它是一个通配证书,你明确地说你没有证书。 如果您不打算获得通配符,那么列出每个子域的SAN字段就是您所需要的。

他们的语言是不正确的?

不,你的。

如果我有prod.example.comprod.example.com (两个主机名,但域名相同)

这些一样的域名。 它们都是独立的域名,恰好是example.com 子域名

域名是DNS中任何级别的任何名称,而不仅仅是从域名注册商处获得的名称。

SSL证书只能涵盖:

  1. 一个确切的域名
  2. 如上所述,但附加“主题替代名称”,或
  3. 每个子域,即通配证书。

因此,你不能只获得example.com的证书,并自动覆盖子域名。

首先澄清:你使用的方式没有子域 – 只有域。 或者,您可以更好地说,您拥有的任何域名都是子域名。 根域是“。”。 TLD“com。” 是“。”的“子域”。 “example.com”。 是“com”的子域…子域是在另一个域内定义的域。 但这是相对的,不是绝对的属性。

通配符证书更为广泛,不是因为它们与域名不同,而是因为它们的暴露和被攻破的可能性。 您不支付SSL证书的“价格”,但是有限的保险。 只有在违规行为是由于您的证书处理不当而造成的,而且这是CA的连锁,这种保险才会涵盖。

如果您只有几个子域名,那么为多个域名(使用“主题备用名称”的证书)购买证书便宜。 如果您有一个域的许多子域,或者您希望添加未知数量的子域,则最好购买通配符证书。 如果您有不同的域(example1.com,example2.com,example1.us),则只能使用SAN证书,或者为每个域购买通配符证书。 (例如,你不能为* .com购买通配符证书)。

使用SAN证书或通配符证书可能会降低configuration的安全性,因为会迫使您使用相同的侦听器,并且很可能使用相同的用户(您可以使用类似mod_suexec的不同用户对apache运行)。 所以如果一个网站受到攻击,可能会导致其他网站受到攻击。 如果您拥有不同的证书,则可以将这些应用程序作为不同的用户运行,并具有更好的安全性