cloudflare合作伙伴中国区代理商深圳市获加科技有限公司

如何使用Cloudflare保护您的WordPress网站

用于保护WordPress的Cloudflare防火墙规则

本指南面向具有安全意识的网站管理员,他们在启用Cloudflare的域上运行WordPress网站或博客。在免费计划中,Cloudflare会授予五个默认为空的防火墙规则。

通过添加我在本页上描述的特定于WordPress的规则,您可以保护您的网站并阻止攻击,甚至阻止它们到达Web主机的服务器。

将您的IP地址列入白名单

在实施任何防火墙规则之前,应首先将自己的IP列入白名单。这样一来,如果您决定将WordPress管理区域拒之门外,您就不会受到影响(我将在稍后解释)。

可以通过访问Cloudflare仪表板并单击防火墙,然后 单击 工具,输入IP *,然后 在下拉菜单中选择 白名单来完成此操作.

*您可以按安全性从高到低的顺序选择几种方式:

  • 将您的确切 IP地址列入白名单 。ISP授予您静态IP的最佳选择。请注意,如果您的IP发生更改,则需要重新输入,以免被锁定在WordPress管理区域之外。
  • 将您的ISP的整个IP范围列入白名单。如果您拥有动态IP,则是不错的选择。
  • 将您的国家列入白名单。这不能保护您免受自己国家/地区内部的攻击,但是如果您经常出差并使用Wi-Fi连接到WordPress网站,这可能是一个方便的选择。

以这种方式列入白名单的IP地址或国家/地区将不受 所有 防火墙规则的限制,因此您无需为每个单独的规则添加例外。

1.阻止wp-login.php攻击

如果您查看服务器日志,可能会发现来自世界各地的大量IP试图访问wp-login.php文件。这是迄今为止对WordPress安装最常见的攻击。这些通常是自动扫描,不会带来很大的威胁,但是您仍然可以放心地将其阻止。

在Cloudflare仪表板中, 再次单击“ 防火墙”,然后按蓝色的“ 创建防火墙规则” 按钮。将其命名为任意名称,然后输入以下内容:

  • 栏位:URI路径
  • 运算符:包含
  • 值:/wp-login.php

[动作:封锁]

如果你做的没错,你应该看到下面的 表达式预览 部分:

1个(http.request.uri.path contains "/wp-login.php")

保存规则,它应该自动启用。现在,Cloudflare将开始阻止所有尝试连接到wp-login.php的尝试,但您列入白名单的IP除外。

这些蛮力尝试将从您的服务器日志中消失,但是如果您希望验证保护功能是否起作用,则可以在Cloudflare的“防火墙事件” 部分中进行跟踪 。

2.阻止xmlrpc.php攻击

在wp-login.php之后,xmlrpc.php是第二常见的攻击目标。XML-RPC具有合法用途,例如从智能手机撰写博客,或一次将内容发布到多个WordPress网站。但是,如果不需要它,则可以安全地将其阻止。遵循与之前相同的步骤,并创建规则:

  • 栏位:URI路径
  • 运算符:包含
  • 值:/xmlrpc.php

[动作:封锁]

您应该在“表达式预览” 部分中看到以下 内容:

1个(http.request.uri.path contains "/xmlrpc.php")

3.保护wp-admin区域

现在,让我们让您(只有您自己)可以访问您的管理区域。该规则稍微复杂一点,因为您需要做出两个例外。

首先是/wp-admin/admin-ajax.php,某些插件使用它来在您的网站上显示动态内容。因此,尽管位于/ wp-admin /文件夹中,但仍需要从外部对其进行访问。

第二个是/wp-admin/theme-editor.php,它在您每次通过内置编辑器通过对主页创建回送请求来编辑主题时都运行错误检查。如果不添加此例外,则检查将失败,并显示一条消息“无法与站点进行通讯以检查致命错误”,并且您的修改将不会保存。

继续并创建以下规则:

  • 栏位:URI路径
  • 运算符:包含
  • 值:/ wp-admin /

[和]

  • 栏位:URI路径
  • 运算符:不包含
  • 值:/wp-admin/admin-ajax.php

[和]

  • 栏位:URI路径
  • 运算符:不包含
  • 值:/wp-admin/theme-editor.php

[动作:封锁]

或者,只需点击 编辑表达 和粘贴以下:

1个(http.request.uri.path contains "/wp-admin/" and not http.request.uri.path contains "/wp-admin/admin-ajax.php" and not http.request.uri.path contains "/wp-admin/theme-editor.php")

4.阻止对插件的无引用请求

大多数WordPress网站都通过不安全的插件被黑客入侵。当然,最好的办法是不安装它们,但是您也可以创建防火墙规则来阻止直接访问/ wp-content / plugins /。

通过您的网站发出的合法请求带有“ http://yoursite.com/page”作为HTTP引用的内容,并且将被自动允许。您可能还希望允许已知的优秀漫游器(例如Google搜寻器)通过,以防它们试图在您的plugins文件夹中索引某些内容(例如图像)。

创建以下规则:

  • 栏位:URI路径
  • 运算符:包含
  • 值:/ wp-content / plugins /

[和]

  • 领域:推荐人
  • 运算符:不包含
  • 值:yoursite.com(替换为您的真实域名

[和]

  • 领域:已知机器人
  • 运算符:等于
  • 值:关

[动作:封锁]

或者,只需粘贴此直接表达(记得与实际地址来替换yoursite.com): 

1个(http.request.uri.path contains "/wp-content/plugins/" and not http.referer contains "yoursite.com" and not cf.client.bot)

5.通过阻止对wp-comments-post.php的直接请求来减少垃圾邮件

我会说实话:由于这些天的垃圾邮件机器人非常复杂,足以欺骗引荐来源,因此此规则的影响将很小。这只会阻止僵尸程序直接锤击wp-comments-post.php文件。尽管如此,WordPress Codex中也描述了相同的技巧(除非他们使用.htaccess规则而不是Cloudflare),因此,如果对他们足够好,对我也足够。

规则如下:

  • 栏位:URI路径
  • 运算符:等于
  • 值:/wp-comments-post.php

[和]

  • 字段:请求方法
  • 运算符:等于
  • 开机自检

[和]

  • 领域:推荐人
  • 运算符:不包含
  • 值:yoursite.com(替换为您的真实域名

[动作:封锁]

这是节省您时间的表达式:?

1个(http.request.uri.path eq "/wp-comments-post.php" and http.request.method eq "POST" and not http.referer contains "yoursite.com")

您的网站现在更加安全!

这五个规则应涵盖最常见的WordPress攻击,但可以根据需要进行调整和组合。

您在日志中看到的大多数攻击都来自自动漫游器,它们只是愚蠢地扫描网站的漏洞,但是如果白名单IP之外的人试图访问您的管理区域,则会收到类似“错误1020”的页面(您可以通过代理或VPN对其进行确认):

加CDN防止源站IP被泄露

检查是否安装了iptables

  1. service iptables status


安装iptables

  1. yum install -y iptables


升级iptables

  1. yum update iptables


安装iptables-services

  1. yum install -y iptables-services


查看默认防火墙状态

  1. firewall-cmd –state


停止firewall

  1. systemctl stop firewalld.service


禁止firewall开机启动

  1. systemctl disable firewalld.service


禁用firewalld服务

  1. systemctl mask firewalld

查看iptables现有规则

  1. iptables -L -n


先允许所有

  1. iptables -P INPUT ACCEPT


清空所有默认规则

  1. iptables -F


清空所有自定义规则

  1. iptables -X


所有计数器归0

  1. iptables -Z

禁止来自IPv4的所有HTTP/S访问请求

  1. iptables -I INPUT -p tcp –dport 80 -j DROP
  2. iptables -I INPUT -p tcp –dport 443 -j DROP


对Cloudflare CDN IPv4地址开放HTTP/S入站访问

  1. for i in `curl https://www.cloudflare.com/ips-v4`; do iptables -I INPUT -s $i -p tcp –dport 80 -j ACCEPT; done
  2. for i in `curl https://www.cloudflare.com/ips-v4`; do iptables -I INPUT -s $i -p tcp –dport 443 -j ACCEPT; done


禁止来自IPv6的所有HTTP/S访问请求

  1. ip6tables -I INPUT -p tcp –dport 80 -j DROP
  2. ip6tables -I INPUT -p tcp –dport 443 -j DROP


对Cloudflare CDN IPv6地址开放HTTP/S入站访问

  1. for i in `curl https://www.cloudflare.com/ips-v6`; do ip6tables -I INPUT -s $i -p tcp –dport 80 -j ACCEPT; done
  2. for i in `curl https://www.cloudflare.com/ips-v6`; do ip6tables -I INPUT -s $i -p tcp –dport 443 -j ACCEPT; done


保存iptables配置

  1. iptables-save
  2. ip6tables-save


保存规则(路径:/etc/sysconfig/iptables和ip6tables)

  1. service iptables save
  2. service ip6tables save


开启iptables服务

  1. systemctl enable iptables.service
  2. systemctl enable ip6tables.service


自动载入规则

  1. chkconfig iptables on
  2. chkconfig ip6tables on


开启服务

  1. systemctl start iptables.service
  2. systemctl start ip6tables.service


查看状态

  1. systemctl status iptables.service
  2. systemctl status ip6tables.service


重启iptables

  1. systemctl restart iptables.service
  2. systemctl restart ip6tables.service

Railgun的快速安装及启动

CloudFlare Railgun™

Cloudflare Railgun

Railgun是Cloudflare开发的WAN优化技术,Cloudflare商业和企业客户以及Optimized Partner均可使用 。Railgun需要在Web服务器的网络上安装一个名为Railgun Listener的软件。

使用Cloudflare的主要优势之一是,可缓存的内容(例如图像,JavaScript,CSS和HTML)都由Cloudflare缓存并从我们全球的数据中心提供。由于Cloudflare的数据中心遍及全球,因此缓存的内容可以迅速传递到网络冲浪者,无论他们身在何处(并解决了延迟问题)。

但是只有大约66%的内容是可缓存的。其他34%必须从真实来源的Web服务器获得。Railgun通过使用一种方案来解决此问题,该方案能够缓存动态生成或个性化的网页,从而大大减少了使用的带宽并缩短了下载时间。

Railgun是在64位系统上运行的单个守护程序,该守护程序使用替代压缩技术来显着提高WAN性能。

它通过特殊协议代理流量,该协议通常会通过HTTP在Cloudflare和您的原始服务器之间传输。

通常,网站的标记或JSON API响应正文不会将更改频繁地从一个请求更改为下一个请求。Railgun不会在Cloudflare和您的环境之间转移整个请求,而只会将标记的更改从一个请求转移到下一个请求。这样可以减少带宽,传输时间和整体页面加载时间。Railgun将这些差异缓存在内存中,以使页面处理尽可能快。

要求

商业和企业用户 优化的合作伙伴
硬件
  • 双核处理器
  • 4GB内存
  • 64位架构
  • 四核处理器
  • 8GB RAM
  • 64位架构
软件
  • 具有至少512MB存储空间的Memcache> = 1.4(建议> 1GB)
  • 具有至少1GB存储空间的Memcache> = 1.4(建议> 2GB)
操作系统
  • Debian 8、9
  • Ubuntu Linux 12.04、14.04、16.04
  • 红帽企业版Linux 6、7
  • CentOS 6、7
网络
  • 2408端口开放给来自我们IP的流量

Railgun的工作原理是不可缓存的网页不会很快改变。例如,我捕获了CNN主页HTML一次,然后在5分钟后再次捕获,然后在一个小时后再次捕获。页面大小为92,516,五分钟仍为92,516,一个小时后为93,727。

CNN将此页面上的缓存设置为60秒。一分钟后,必须重新下载整个页面。但是查看页面本身并没有太大变化。实际上,版本之间的更改大约是100k字节中的100s字节。这是五分钟间隔CNN主页之间的小二进制差异之一的屏幕截图。黄色字节已更改,其余字节未更改:

_images / cnn.png

Cloudflare的实验揭示了整个网络上类似的变化值。例如,reddit.com在五分钟内变化约2.15%,在一个小时内变化3.16%。纽约时报首页在五分钟内变化约0.6%,在一个小时内变化3%。英国广播公司新闻在五分钟内变化约0.4%,在一个小时内变化2%。

尽管动态Web不可缓存,但它并没有快速改变。这意味着页面的不同版本之间有时只有很小的变化。Railgun利用这一事实实现了很高的压缩率。这与视频压缩查找逐帧变化的方式非常相似;Railgun在页面上查找从下载到下载的更改。

Railgun由两个组件组成:发送者和监听者。发送器已安装在全球每个Cloudflare数据中心。侦听器是高级客户在其网络上安装的软件组件。

发送方和侦听方建立由TLS保护的永久TCP连接。此TCP连接用于Railgun协议。这是一个全二进制多路复用协议,允许多个HTTP请求在链接上同时异步运行。

对于Web客户端,Railgun系统看起来像是代理服务器,但它不是服务器,而是具有特殊属性的广域链接。这些属性之一是它通过同步页面版本对不可缓存的内容执行压缩。

Railgun链接的每一端都跟踪所请求网页的最新版本。当对Railgun已经看到的页面提出新请求时,仅更改通过链接发送。侦听器组件向真实的原始Web服务器发出不可缓存页面的HTTP请求,与存储的版本进行比较并跨差异发送。

然后,发送方从其缓存和另一端发送的差异中重建页面。

当然,今天的网页上使用了压缩。最常见的技术是gzip页面本身。CNN实际上会执行此操作,并发送23,529字节的压缩数据,该数据在解压缩后将变成92,516字节的页面(因此,该页面被压缩到其原始大小的25.25%)。谷歌已经提出了一种称为SDCH的基于字典的方案,该方案并不复杂。

但是Railgun压缩技术却走得更远。上面页面的版本1和2之间的压缩(每隔五分钟)导致仅发送266字节的差异数据(压缩到原始页面大小的0.29%)。一小时的差异(上述版本2至3)为2885字节(压缩为原始页面大小的3%)。显然,Railgun压缩的性能大大优于gzip。

对于经常访问的页面,增量通常很小,以至于它们只能容纳在一个TCP数据包中,而且由于保持了Railgun的两部分之间的连接处于活动状态,从而消除了TCP连接时间和启动缓慢的问题。

Cloudflare CNAME接入服务

CloudFlare支持免备案、SSL、 IPv6、防 DDOS、防 CC,在境外响应速度很快,提供国内节点。但中国地区节点仅对企业版(Enterprise),并且域名在中国地区ICP备案,我们是Cloudfalre合作伙伴,如果需要企业版(Enterprise)请联系我们索取报价。

以下针对本公司所有客户开放申请

本公司所有客户均可Cloudflare CNAME/IP/NS 接入CloudflareCDN而无需修改域名NS。让部署业务更方便。

Cloudflare 官网提供的CDN需要修改域名的NS服务器。作为Cloudflare的合作伙伴,直接可CNAME/IP接入。对于较复杂NS记录的客户是个不错的选择,可免费提供海外200+的加速节点。

A记录解析ip,得到CNAME记录后直接在域名托管处理CNAME接入
直观的统计图表
详细列明流量情况

如果你已是我们的客户,而又需要海外加速,请联系我们接入免费Cloudflare。

如果你需要更专业的Cloudflare Partners Pro计划,我们更可提供专业版测试使用。

Cloudflare 企业版,请联系我们索取报价。

Cloudflare合作伙伴

Cloudflare是一间总部位于旧金山的美国跨国IT企业,以向客户提供基于反向代理的内容传递网络及分布式域名解析服务为主要业务。利用Cloudflare全球Anycast网络,Cloudflare可以帮助受保护站点抵御包拒绝服务攻击等网络攻击,确保该网站长期在线,同时提升网站的性能、加载速度以改善访客体验。

激动地宣布我们与深圳市获加科技有限公司(Huojia Technology Co., Ltd. 微信公众号:CHUNGTAT云计算)的合作伙伴关系!如果你以前没听说过CloudFlare,那么我们的价值主张很简单:我们将使任何网站的速度提高一倍,并保护其免受广泛的网络威胁。

我们每月有超过4000亿的页面浏览量——超过亚马逊、维基百科、推特、Zynga、美国在线、苹果、必应、eBay、PayPal和Instagram的总和——每月有超过12亿的用户定期通过我们的网络。我们非常高兴深圳市获加科技有限公司与CloudFlare合作——CloudFlare Channel Account Manager(Adan Luo)。

更快的网络性能

CloudFlare的设计宗旨是采用像CHUNGTAT云计算这样的优秀服务平台,并使其变得更好。

我们的数据中心战略性地分布在世界各地。当您注册CloudFlare时,我们将开始将您的流量路由到最近的数据中心。

当你的流量通过数据中心时,我们会智能地确定你网站的哪些部分是静态的,哪些是动态的。静态部分在我们的服务器上缓存了很短的一段时间,通常在我们检查它们是否被更新之前不到2小时。通过自动地将站点的静态部分靠近访问者,站点的整体性能得到显著改善。

CloudFlare的智能缓存系统还意味着您可以节省带宽,这意味着节省资金,并降低服务器的负载,这意味着您的web应用程序将比以往更快、更高效地运行。平均而言,CloudFlare客户的带宽使用量减少了60%,对服务器的总请求减少了65%。总体效果是,CloudFlare通常会将你网站上页面的加载时间减少50%,这意味着更高的参与度和更快乐的访问者。

广泛的网络安全

在2011年期间,CloudFlare发现分布式拒绝服务攻击的数量增加了700%(我们在互联网上追踪的DDoS)。随着此类攻击的增加,CloudFlare正在加强对网站的保护。

CloudFlare的安全保护提供了广泛的保护,以抵御DDoS、黑客攻击或提交到博客或评论表单的垃圾邮件等攻击。我们的方法的强大之处在于,加入CloudFlare社区的站点越多,系统就越智能。我们实时分析数亿游客的交通模式,并调整安全系统,以确保良好的交通通过,糟糕的交通停止。

随着时间的推移,我们的目标就是让对网站的攻击成为历史的遗迹。考虑到我们的规模,以及我们每年看到并适应的数十亿次不同的攻击,我们正在为CloudFlare网络上的站点实现这一目标而努力。

签约

任何网站都可以部署CloudFlare,不管你的底层平台是什么。通过与深圳市获加科技有限公司紧密结合,通过您现有的Cloudflare控制面板仪表盘,使CloudFlare的设置过程“1点轻松”。只需查找CloudFlare图标,选择想要启用的域名,然后单击橙色的云。就是这样!

我们将价格保持在尽可能低的水平,通过深圳市获加科技有限公司提供的方案都是免费的。此外,我们从不收取您的带宽或存储,因此节省您通过减少带宽成本。

对于想要享受CloudFlare高级服务的网站所有者,我们还提供每月20美元的“专业”级服务。(连接我们的Cloudflare Partner Network可以优惠体验专业版功能),“专业”版包括所有“免费”版的产品,以及额外的功能,如SSL、完整的网络应用防火墙和更快的分析。

我们感到自豪的是,每天都有超过1000个新网站加入CloudFlare社区,其中包括一些最大的网站。如果你正在寻找一个更快、更安全的网站,你已经有了一个良好的开端。