【问题标题】:SSL DSN hidden redirect from sub1.domain1.com to sub2.domain2.comSSL DSN 隐藏重定向从 sub1.domain1.com 到 sub2.domain2.com
【发布时间】:2021-10-21 05:33:04
【问题描述】:

我需要进行设置,用户将能够访问 URL sub1.domain1.com,该 URL 将由 DSN 映射到 sub2.domain2.com,因此所有进一步的通信似乎都是与 sub1.domain1.com ,但实际上它只会被“重定向”到 sub2.domain2.com。 HTTPS 也是必需的,所以简单的 CNAME 不会这样做。

到目前为止,我已经了解了 SAN 证书。有了那个证书,似乎就有可能做到这一点。然而,它对我来说有一个缺点——每个新域都添加到此证书中,所有其他域所有者都必须确认这一点。这不太适合我的情况,因为我希望定期添加新域。

所有域都指向一个特定的子域(例如:sub1.domain1.com -> sub2.domain2.com,sub3.domain3.com ->sub2.domain2.com, sub4.domain4.com->sub2. domain2.com ..),因此证书不必允许所有域之间相互重定向,但允许从所有域重定向到某个域(sub2.domain2.com)就足够了

是否有更合适的替代方案来实现这一目标?

【问题讨论】:

  • 当用户在浏览器的地址栏中输入https://sub4.domain4.com时,您是否希望(显示页面时)栏中的地址更改为https://sub2.domain2.com
  • 不,我希望用户始终只看到sub4.domain4.com
  • DNS 问题必须与编程相关。使用此标签解决与编写与域名系统 (DNS) 交互的代码相关的编程问题;例如,编写使用 gethostbyname() 的代码

标签: redirect https ssl-certificate


【解决方案1】:

如果当用户在其浏览器的地址栏中键入https://sub4.domain4.com 时,您不希望(显示页面时)栏中的地址更改为https://sub2.domain2.com,那么从技术上讲,不涉及 HTTP 重定向。您只有一个可以通过多个主机名访问的网站/网络应用程序(这很正常)。

你需要

  1. CNAME 到位
  2. 如果您无法获得(或者维护起来很复杂 - 这是意料之中的,尤其是在您不拥有域的情况下)一个包含所有主机名的 SSL/TLS 证书,那么您始终可以使用多个虚拟主机配置您的网络服务器,每个都有自己的证书,并根据需要不断添加虚拟主机。所有虚拟主机都可以配置为提供相同的内容(或者只是将代理请求反向到在代理后面运行的同一个 webapp)。技术实现取决于所使用的平台,但通常并不复杂。

【讨论】:

  • hmmm,但在这种情况下,我是否必须向域所有者“询问”他们的证书私钥?
  • 不一定。在他们将 sub4.domain4.com 命名为您的主机名后,您应该能够自己创建证书(为其主机名),例如使用 certbot。
  • 哦,对了,一个域不必只有一个有效证书。所以他们可以保留他们当前的证书,我可以为他们的子域(sub4.domain4.com)生成一个全新的证书,我将设置为我的虚拟主机。我对 CNAME 感到害怕,但归根结底,它离实际 IP 解析仅一步之遥,因此登陆域 (sub2.domain2.com) 的证书根本不重要。对吗?
  • 如果没有用户会直接在浏览器地址栏中使用该主机名(并且没有网页资产 url 引用该主机名),那么您不需要该证书。其实那根本就不是登陆域,只是DNS解析中的一个子步骤
  • 是的,现在很清楚了。所以这毕竟是非常基本和简单的东西。谢谢。
猜你喜欢
  • 1970-01-01
  • 2019-08-20
  • 1970-01-01
  • 1970-01-01
  • 2013-06-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-13
相关资源
最近更新 更多