CloudFlare如何保护网站?

我对CloudFlare提供的保护有点困惑。 我正在通过CloudFlare与一个橙色云 ,以及另一个子域(我们说direct )用一个灰色云来引导www子域。 但是,当我tracertwww.example.comdirect.example.com路由和结束IP是相同的两个。

我期待的www子子域在一些CloudFlare IPs结束。 这是正常的吗?

traceroute (或者tracert如果你在Windows上)不是一个理想的工具来找出一个域映射到哪个IP地址。 由于有些人使用这种方法, ping也不是。 虽然他们都做IP地址查找域作为他们做的第一件事,这是偶然的主要function。

如果你想知道一个域的IP地址,专门为此devise的工具是nslookupdig 。 ( nslookup存在于Windows上,如果你在Windows上安装Cygwin或者使用任何Unix或Linux版本, dig是可用的。)

为了使CloudFlare正常工作,当您使用nslookupdig您的域名时,您获得的IP地址应该是CloudFlare告诉您使用的IP地址。 如果它仍然是您的IP地址,则说明您没有使用CloudFlare。

域名系统中有很多caching。 如果您最近已将域名更改为指向CloudFlare,但上述其中一个工具仍将其视为指向您的服务器,可能是由于caching。 dig也会打印出任何结果的TTL值,这个结果会指示这个结果将被持续caching多久。 你可以告诉dig直接从权威的名字服务器得到它的结果,这将避免这种caching。 (这就是为什么dig是比pingtraceroute处理DNS更合适的工具。)这个命令是dig @ns1.example.com www.example.com其中ns1.example.com是你的名字服务器和www.example.com是您的域名。

从常见问题解答中 ,CloudFlare要求您将权威名称服务器更改为他们的名称服务器。 这个设置也可以被caching,并且通常有一个非常长的TTL(多天不是罕见的)。

即使仍然看到旧的caching的IP地址,只要您在使用权威名称服务器时看到CloudFlare,那么有些人可能会拥有正确的IP地址。 在这种情况下,您将看到来自CloudFlare的IP地址的 Web服务器日志中的命中。

如果你想在你的日志中使用访问者的原始IP地址, mod_cloudflare可以用于Apache,并且有其他平台的解决scheme。

您从CloudFlare获得的保护来自三个不同的方面:

  1. 他们充当您的网站的反向代理。 与所有反向代理设置一样,这意味着它们只会向原始Web服务器发出有效的请求。 他们也不会人为地减慢请求,所以Slow Loris攻击(例如)不会影响你的Web服务器。
  2. 他们caching你的静态内容。 这意味着,如果您最终从Slashdot或Reddit的首页链接,只有大约1/10的stream量将到达您的服务器。 另外9/10将由CloudFlare直接提供。 这也可以帮助减轻DDoS攻击的大小和容量。
  3. 他们过滤掉电子邮件收集机器人,博客评论垃圾邮件发送者,暴力login尝试和已知的软件漏洞,如你看到攻击phpMyAdmin,Wordpress和Joomla的所有的时间。 使用Pro账户,他们也会过滤出他们检测到的任何XSS和SQL注入尝试。

如果您在DNS设置中将它们标记为橙色云,则www和root域名肯定应该被代理。 但是,我们不能代理直接logging,所以它会终止在服务器IP( 端口CloudFlare可以代理 )。