我正在考虑为我们的网站添加 SSL 证书,这通常是一件简单的事情,但我们遇到了一个复杂问题,我目前不确定如何解决/解决。
我们的服务器目前正在保护从另一台服务器重定向的站点,我们发现无法将两个证书绑定到同一个 IP。
历史
前段时间,我们的市场部希望我们的用户能够从我们的公共网站 (company.com) 登录到应用程序网站,并保留 'app.company.com' 的网址。公共网站由另一个组织创建和维护,整个网站已采用 https。
为了方便他们的请求,我们在 application.com 服务器上创建了一个新的网站“app”,安装了他们的证书,并将其绑定到“app”网站。此网站使用主机名“app.company.com”,并指向与 application.com 网站相同的文件夹/代码。
我们现在需要保护应用程序和来自 application.com 的所有访问,但不确定如何继续。
到目前为止,我们已尝试用我们的证书替换他们的证书,这确实有效,但会在客户端上显示“证书与域不匹配”警告,我们需要避免这种情况。我们已尝试将我们的证书添加到 application.com 中的默认站点,但我们收到“绑定也分配给另一个站点绑定”的消息,这会阻止从公共站点进行访问。
当前设置
答案1
您是否获得了 application.com 的第二个 IP 地址并将证书绑定到该地址?
在 IIS 7.x 中,每个 IP 地址只能分配一个证书。使用第二个地址,您可以添加第二个证书并同时使用这两个证书。
答案2
您是否必须使用 *.company.com 通配符证书?您可以使用一个证书获得涵盖 app.company.com 和 app.application.com 的统一通信证书(带有主题备用名称)。
答案3
有三种可能的解决方案。前两种就是上面提到的。
可能的解决方案
1) 为您的服务器提供两个 IP,这样它就可以在每个 IP 上使用不同的证书进行响应。您在给定的 IP 和端口上只能拥有一个证书。也就是说,在端口 443 上响应的服务器在执行任何其他操作之前会使用证书加密其流量 - 因此在它查看您要连接到哪个站点之前。通常这意味着一个证书、一台服务器,但这可以让您鱼与熊掌兼得。这是理想的解决方案。
2)获取具有多个有效地址的一个证书 - 您可以获取包含多个名称的证书,因此主题备用名称字段可以包含 app.company.com 和 app.application.com,因此任何连接的人都会认为服务器正常。
3)你经常看到的一个临时解决方案是在 443 的备用端口上运行 https。你设置了一个重定向http://app.company.com到https://app.company.com:444并在响应 444 的服务器上安装证书。对http://app.application.com。这是一个临时解决方案,但应该可以工作。