首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >什么使Cloudflare能够禁用直接IP地址访问?

什么使Cloudflare能够禁用直接IP地址访问?
EN

Server Fault用户
提问于 2020-03-26 14:00:35
回答 2查看 21.9K关注 0票数 9

当我访问具有Cloudflare的网站时,使用该网站的IP地址,我会收到以下消息:

代码语言:javascript
运行
复制
Error 1003
Direct IP access not allowed


What happened?

You've requested an IP address that is part of the Cloudflare network.
A valid Host header must be supplied to reach the desired website.

我是一个学生。

  1. 什么允许Cloudflare阻止直接IP地址访问?
  2. DNS不是IP地址之上的一层吗?如果是,如果Cloudflare是DNS服务,为什么Cloudflare有阻止IP地址的能力?
EN

回答 2

Server Fault用户

回答已采纳

发布于 2020-03-26 14:20:11

cloudflare的设置没有什么特别之处。这只是HTTP的一个属性。

当客户端打开URL时,有三个重要步骤:

  1. 如果需要,它会使DNS (或其他解析方法)将主机名转换为IP地址。如果URL指定主机的IP地址,请使用该地址。
  2. 它连接到已知端口号(通常为80 )上的IP地址(除非它在URL中被覆盖)。
  3. 它向服务器请求页面,包括所需的主机名。

一个典型的例子如下:

代码语言:javascript
运行
复制
GET /pub/WWW/TheProject.html HTTP/1.1
Host: www.w3.org

考虑一个有很多网站的大型主机。为了简单起见,假设它只有一个IP地址。数百个域名解析到此地址。服务器如何决定交付哪些页面?它使用客户端在HTTP请求中提供的主机详细信息。如果你要求得到它没有或想给你的东西,它会给你一个错误的反应。

在您的示例中,请求包含主机说明符的IP地址。

代码语言:javascript
运行
复制
GET /whatever HTTP/1.1
Host: a.b.c.d

当主机由IP地址指定时,许多主机决定不分发页面。Cloudflare在这里没有什么特别之处,也与DNS无关。这是关于服务器如何响应IP地址指定的主机请求,您可以看到此错误消息指定了A valid Host header must be supplied

下面是一个说明如何以这种方式配置服务器的答案:https://serverfault.com/a/607222

通过使用telnet连接到服务器并手动发出HTTP请求,您可以轻松地验证这种行为。

PS。相同的一般答案适用于HTTPS请求,但在安装过程中使用服务器名称指示。值得注意的是,Host附带了HTTP1.1 (1997)。在此之前,这里描述的机制并不存在,而且服务器无法可靠地判断客户端是否请求了一个合法解析到其IP地址的名称,或者直接通过IP地址请求主机。由于这是网站爆炸性增长的一个重要发展,许多老客户端被更新以发送Host。感谢评论员们对细节的了解。

票数 22
EN

Server Fault用户

发布于 2020-03-26 14:23:18

您要联系的系统在httpd配置中列出了多个站点。

HTTP服务器能够区分托管在其上的各种站点的唯一方法是使用直接URL。

因为这些站点托管在CloudFlare的硬件上,所以它们可以提供任何希望出现的错误。CDN()基于以下几个因素将连接转移到最近的缓存副本。

如果您查看CloudFlare作为一个服务提供了什么,您将看到设置过程的这一部分,您将您的域名DNS记录重新定位到它们的dns服务器,然后这些服务器只使用它们的CDN系统。作为一个开发人员,如果您正在使用CDN,您仍然知道您的实际主机位于何处,并且可以直接与它们联系,客户不再具有这种访问权限。

这也有助于将主机与DDos攻击隔离开来。CDN仍然会联系您的主机获取内容,除非您的整个基础设施都托管在CDN网络中。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1008522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档