以这篇文章为食。
我有一个 Dreamhost 域,我已经为它购买了 SSL 证书。
我正在将服务器文件移至 Linode,但将 dreamhost 中的 DNS 设置为指向。
Linode 提供了一个 ip,但它不是专用的。
当我将 DNS 切换到 linode 时,该 dreamhost IP 上的 SSL 会发生什么情况?
我有一个虚拟主机,我可以托管多个域,同时为一个域使用 SSL 吗?
以这篇文章为食。
我有一个 Dreamhost 域,我已经为它购买了 SSL 证书。
我正在将服务器文件移至 Linode,但将 dreamhost 中的 DNS 设置为指向。
Linode 提供了一个 ip,但它不是专用的。
当我将 DNS 切换到 linode 时,该 dreamhost IP 上的 SSL 会发生什么情况?
我有一个虚拟主机,我可以托管多个域,同时为一个域使用 SSL 吗?
每个 SSL 域都需要一个自己的 IP。您当然可以在一个 IP 上拥有一个 SSL 站点和多个非 SSL 站点。
有使用Server Name Indication的选项,但由于它只在少数浏览器中实现,所以它不是一个真正的选择。
您的 IP 地址应该专用于您的 VPS。但是,您必须拥有 Dreamhost,或者您购买 SSL 的任何人才能重新分配它,这可能需要一些时间。它还将使新服务器成为具有正确 SSL 签名的服务器,因此您的旧服务器将显示证书错误。避免这种情况的唯一方法是获得多站点 SSL(昂贵)或购买第二个 SSL 证书(便宜)。
证书和主机名验证由客户端完成,使用客户端请求的主机名。
这意味着服务器的 IP 地址并不真正相关:重要的是无论什么请求连接到主机名最终都会连接到具有对该主机名有效的证书的服务器。
例如,如果您有一个动态 IP 地址和一个动态 DNS 服务(例如
example.dyndns.org
)在 IP 地址更改时更新,一个 DNS CNAME 条目从www.mydomain.example
指向example.dyndns.org
,以及一个有效的证书www.mydomain.example
,请求连接到的客户端www.mydomain.example
确实会获得一个证书对 有效www.mydomain.example
,并且无论 IP 地址如何,这都将起作用。(话虽这么说,对于严肃的托管,固定 IP 地址更好。)进行转换的一个好方法是使用
iptables
转发规则(或类似规则)将所有流量(在端口 80 和 443 上)从旧机器重定向到新机器。这应该允许在 DNS 更新传播到所有服务器时平稳过渡。这样,请求的客户端
www.mydomain.example
将由您的新服务器有效地提供服务,无论是www.mydomain.example
指向您的旧 IP 地址还是新 IP 地址。根据您对旧托管公司的信任程度,您可能希望撤销旧证书并获得新证书(某些 CA 允许在证书有效期内免费重新键入密钥)。否则,您的旧托管公司在技术上可能仍然可以访问您的私钥(并且可以使用该证书)。
如果您正在谈论具有单个 HTTPS 虚拟主机的多个普通 HTTP 虚拟主机,是的,这显然可以通过您的证书实现。如果你想在一个 IP 地址上使用多个 HTTPS 虚拟主机,你必须使用带有服务器名称指示的多个证书(某些浏览器不支持,特别是 Windows XP、Java 6 和一些移动客户端)或单个证书适用于您要提供的所有名称(具有多个主题备用名称)。