AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 792712
Accepted
Eric Hepperle - CodeSlayer2010
Eric Hepperle - CodeSlayer2010
Asked: 2016-07-30 05:10:01 +0800 CST2016-07-30 05:10:01 +0800 CST 2016-07-30 05:10:01 +0800 CST

使用 Windows 主机文件将外部 URL 重定向到子域?

  • 772

我将发布此问题,如果社区确定需要详细说明或澄清,我将对其进行编辑。

问题

我今天想到了一个绝妙的主意。我经常在 Amazon.com 上购物。亚马逊提供了一项计划,您所有购买的一部分都会捐给您选择的名为“亚马逊微笑”的慈善机构。您可以通过访问“smile.amazon.com”(amazon.com 的子域)选择“激活”慈善机构。每当我键入“amazon.com”以自动转到“smile.amazon.com”时,我想使用 Windows 10 主机文件进行重定向,以便我的慈善事业始终受益。不幸的是,它没有像我希望的那样工作。

我试过的

首先,我以管理员身份打开 Notepad.exe。然后,我从记事本打开主机文件(路径:)

C:\Windows\System32\drivers\etc\hosts

并尝试了以下所有方法,但无济于事:

  • 直接网址转换

    smile.amazon.com amazon.com

  • 使用 CMD ping 以获取 Smile.amazon.com ( 54.239.26.123 )的 URL

    54.239.26.123 amazon.com

  • 还添加了 www 子域路由

    54.239.26.123 amazon.com 54.239.26.123 www.amazon.com

  • 它似乎都不起作用(当我输入 _amazon.com_ 时,URL 栏中的地址不会更改为“smile.amazon.com”),但是,存在某种证书错误。我尝试了 4 个浏览器,包括 Firefox、Chrome、SeaMonkey 和 IceDragon,(清除所有浏览器的缓存),但无济于事。

  • 根据此服务器故障帖子,我尝试了以下操作:

    • ipconfig /flushdns
    • ping smile.amazon.com Pinging smile.amazon.com [54.239.26.123] with 32 bytes of data: Request timed out.
    • C:\WINDOWS\system32>nbtstat -R Successful purge and preload of the NBT Remote Cache Name Table.

证书/安全错误

进行上述更改后,我收到此错误:

铬合金:

你的连接不是私人的

攻击者可能试图从 www.amazon.com 窃取您的信息(例如,密码、消息或信用卡)。NET::ERR_CERT_COMMON_NAME_INVALID

如果我点击“高级”,我会得到这个:

该服务器无法证明它是 www.amazon.com;它的安全证书来自smile.amazon.com。这可能是由于配置错误或攻击者拦截了您的连接造成的。

当我点击继续访问亚马逊时,浏览器会将我带到 amazon.com,我在 url 中看到了这个:

(https[划掉])://www.amazon.com


我的问题

所以,我想我想知道的是:

  1. 甚至可以通过 Windows 主机文件将 amazon.com 重定向到smile.amazon.com 吗?
  2. 我该怎么做?
windows networking hosts ssl-certificate windows-10
  • 6 6 个回答
  • 22981 Views

6 个回答

  • Voted
  1. Best Answer
    ma.tome
    2016-07-30T07:24:45+08:002016-07-30T07:24:45+08:00

    DNS 解析和 HTTP 重定向是完全不同的东西,这种方法是错误的。毒化您的本地 DNS 解析以强制执行“amazon.com”解析以伪造“smile.amazon.com”IP 只会导致服务器端出现 SSL 证书、HTTP 会话和跨站点请求拒绝问题:

    首先,SSL证书。amazon.com 和smile.amazon.com 使用子域特定证书提供服务,因此浏览器会在出现与证书名称不匹配的 URL 请求时向用户提出错误。因此,如果您向支持“smile.amazon.com”的服务器请求“amazon.com”资源,即使在执行 HTTP 请求之前,由于证书名称不匹配,您的浏览器也会警告您。当然,您可能会忽略这一点,但支持应用程序逻辑的 javascript 可能不会出现跨域请求,从而使 Web 完全无用。

    其次,如果您以任何方式绕过 SSL 问题,您的浏览器将向 smile.amazon.com 发送请求,询问 amazon.com 的内容,这将导致服务器端提出各种安全机制来拒绝此类跨站点要求。

    最后,预计服务器端会话管理、身份验证、cookie 验证等会出现各种问题。

    • 5
  2. Jonas Hopp
    2018-09-18T02:28:02+08:002018-09-18T02:28:02+08:00

    我正在寻找一种将 url 重定向到另一个的解决方案,并找到了这个线程。我认为其他人会发现我的发现很有用,即使它不是您问题的直接答案,但它仍然是解决问题的方法。

    我建议您尝试使用诸如Redirector for Firefox 或Redirector for Chrome之类的插件,而不是在 windows 中编辑 hosts 文件。

    在我不想浏览某些网站时阻止我浏览某些网站非常有效,例如出于提高生产力的目的,或者强迫自己使用新服务。例如,可以想象使用重定向器停止使用 hotmail.com 并使用另一种自定义服务,而不改变任何其他习惯。

    • 4
  3. maxskybarger
    2017-04-28T09:05:13+08:002017-04-28T09:05:13+08:00

    如果您是 Chrome 用户,这可能会帮助您解决问题:

    SmileAlways是一个 Chrome 扩展程序,它会自动将您重定向到smile.amazon.com。

    • 2
  4. Lars Lind Nilsson
    2016-07-30T07:08:46+08:002016-07-30T07:08:46+08:00

    由于 amazon.com 和 smile.amazon.com 都由多个 IP 地址托管,因此您的 hosts 文件可能需要定期更新。

    而且也可能是亚马逊使用了host-header(也就是你在浏览器中写的域)来检测你尝试访问的站点,所以我认为需要另一种方法。如果您可以设置本地网络服务器(在您自己的计算机上或托管在某处),您可以让该网络服务器托管一个 amazon.com 虚拟网站,该网站会重定向到smile.amazon.com,然后制作hosts 文件中的一项:

    <ip-of-local-webserver>    amazon.com
    

    由于网络服务器会进行重定向,因此每次您在浏览器中编写 amazon.com 时,您的浏览器都会被重定向到smile.amazon.com。这也将消除任何证书警告。

    • 1
  5. joeqwerty
    2016-07-30T06:52:31+08:002016-07-30T06:52:31+08:00
    1. NBTSTAT 是一个 NetBIOS 工具,与 DNS 无关。

    2. 如果您希望 amazon.com 通过您的主机文件解析为 smile.amazon.com 的 IP 地址,那么您将在添加主机文件条目后 ping amazon.com,而不是 smile.amazon.com。您的目标是将 amazon.com 解析为 smile.amazon.com 的 IP 地址,因此名称 amazon.com 是您应该在测试中使用的名称,以确保它解析为 smile.amazon.com 的 IP 地址.

    3. 如果您使用smile.amazon.com 的IP 地址在amazon.com 的主机文件中添加一个条目,并且ping amazon.com 返回smile.amazon.com 的IP 地址,则主机文件正在工作。如果您的浏览器仍然将您定向到 amazon.com,那么它与您的主机文件无关。

    • 0
  6. NetwOrchestration
    2016-07-30T07:07:29+08:002016-07-30T07:07:29+08:00

    我想这里有点混乱。您不需要这些行:

    smile.amazon.com amazon.com
    54.239.26.123 amazon.com
    

    但只有这些,将amazon.com地址重定向到smile.amazon.com的 IP:

    54.239.26.123 amazon.com
    54.239.26.123 www.amazon.com
    

    但它也不起作用:

    第一个:因为使用IP 地址,您正在访问他们的NIC/NAT/Gateway,而URL指向该 IP 地址后面的网站内的网页。例如,如果您解析youtube.com然后尝试手动打开它的 IP 地址,您将到达www.google.com,因为两者都托管在相同的地址后面并且由它们的 URL 标识。因此,想象一下两者都托管在后面54.239.26.123,并且访问它们的唯一方法是 URL,您将其替换为amazon.com,表示您想要访问amazon.com!

    第二:假设smile.amazon.com由另一台服务器托管。SSL/TLS 证书颁发给 URL,在某些情况下,即使您使用address.com而不是访问网站,www.address.com您也会收到证书错误,因为证书仅颁发给后者。因此,如果您尝试访问旨在smile.amazon.com使用您的地址的 IP,amazon.com您将收到证书安全警告,并且您必须添加安全例外。

    抱歉,我不是网络服务/托管方面的专家。我只是尽力解释。

    • 0

相关问题

  • 您最喜欢的云计算提供商是什么?[关闭]

  • Vanilla Powershell 是否足以成为 Windows 和 DB 服务器管理员的语言?

  • 为什么添加新驱动器后我的磁盘驱动器访问速度如此之慢?

  • 在 Windows Server 2003 下使用 wscipt 从 .asp 文件运行 .exe

  • 最佳混合环境(OS X + Windows)备份?[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve