我发现某个域名(即 bajajra.com)指向我的网站的 IP 地址。我使用 IIS 10 托管我的网站。我该如何限制对所有此类未经授权域名的访问?
这个问题类似于这个,但我正在寻找基于 IIS 的解决方案。如何才能使我的网站只能从我的域名(例如 example.com)访问?
答案1
您可能在这里描述了两个问题。第一个是有人简单地设置了与您的 IP 地址的 DNS 绑定。在 IIS 中防止这种情况非常简单。您只需更改 IIS 中的主机名绑定,以便仅在请求特定主机名时才提供您的内容。目前很可能有一个通配符绑定,您也需要将其删除,以便只能解析您想要的绑定。(这也是如何在单个 IIS Web 服务器上托管多个网站的方式。)
从 IIS 连接,您将能够右键单击特定站点以访问“编辑绑定...”对话框。
此对话框将显示此站点应响应的请求的所有绑定设置。主机名是绑定应解析为此站点的有效主机名。一个站点可以有许多不同的绑定,如此处所示。
特定绑定上的设置允许您设置应解析到此站点的主机名。您还可以在此处设置 SSL 证书配置等内容。
第二个可能的问题是热链接。使用热链接,它不是直接调用您的 IP 地址,而是在不同的域上设置某些内容来引用您域上的内容。这可以通过几种不同的方式完成,但大多数方式都需要至少一些服务器在访问您的网站之前给出指令。热链接有点难以预防,但您可以设置有关引用者要求资产的测试,并且仅在引用者匹配时才提供资产。由于客户端浏览器提供此信息,第三方很难试图让浏览器向您的服务器提供不正确的信息,因此过滤通常应该是有效的。
答案2
您几乎无法阻止其他域的管理员在其 A 记录中使用您的 IP。
如果您觉得他们试图违反某些法律或以此损害您的业务,您可以将此问题提请其 DNS 提供商或注册商注意。
这里的另一个答案是关于过滤 http 服务器名,它可以帮助您忽略他们的行为,并限制他们可能对您造成的损害。但是,对于任何不支持 http 主机名的浏览器,它都会破坏您的网站。
还请考虑一下 bajajra.com 只需运行一个指向您网站的转发 Web 代理是多么容易。限制您允许的服务器名称(如另一个答案中所述)不会阻止这种情况,事实上,这会让您的客户面临更大的风险,因为攻击者将能够使用代理来监视他们并篡改您的内容。