一个 SSL 证书适用于多个子域名

一个 SSL 证书适用于多个子域名

我为域名(例如 www.abc.com)设置了 SSL 证书,该域名面向客户。

在同一台服务器(linux)上,我想设置一个供网站管理员专用的子域名,admin.abc.com。

由于 htpasswd 并不是很安全,我希望能够使用 https 查看 admin.abc.com(除非有其他方法)。

那么我是否可以以某种方式使用现有的 SSL 证书来查看 admin.abc.com,即使这意味着接受来自浏览器的不匹配警告?

答案1

如果您能够将多个 IP 地址添加到虚拟主机,则可以使用两个 SSL 虚拟主机,每个虚拟主机使用两个 SSL 证书之一。每个虚拟主机都需要确定它们应该使用哪个 IP 地址,例如在 Apache Httpd 中:

<VirtualHost x.y.z.a:443>

这可能比获取通配符证书便宜,但如果您愿意付费,通配符证书是最容易设置的。

并非所有浏览器都支持 SNI(服务器名称指示),因此尽管这允许您仅使用一个 IP 地址提供多个证书,但如果它们都需要在这些浏览器中可访问,则并不合适。如果只有 www.domain.com 只需要支持较旧的浏览器,那么您仍然可以这样做,因为如果 www.domain.com SSL 证书是第一个加载的证书,那么没有 SNI 浏览器支持的用户仍然可以获得该证书。

Apache Httpd 中的 SNI 仅适用于某些较新的版本,例如在 CentOS 5 中不可用。

UCC 证书超出了您的需求,并且通常非常昂贵,因此我不建议使用它而不是通配符证书。

答案2

如果它对该主机名有效,您只需对其进行配置,就像配置证书一样。

不需要您处理 SSL 证书不匹配问题的其他选项:

依赖不受信任的证书尤其如果流量通过公共互联网传输,那么这是一个糟糕的主意。除非你每次都验证证书,否则你可能会接受一个不同的不匹配证书,这可能是一个中间人攻击,甚至不知道它。

答案3

一个解决方案(但不是最便宜的:))是购买一个通配符证书否则,只需创建一个虚拟主机并使用您已有的证书。但您需要忍受证书警告。

答案4

获取子域名的免费证书http://www.startssl.com/。这个过程很麻烦,但免费证书就是免费证书。暂时跳过通配符证书并节省一点钱。

相关内容