Wordpress攻击泛滥

时间:2014-02-28 14:02:07

标签: wordpress apache ddos

我有几个WP网站,他们正在接收大量请求(大约每分钟2万个),如:

www.example.com/adasd-asdasd-asdas-da/
www.example.com/fds-fdsf-dsfds-fds-f/
...

问题是,如果我的数据库中存在“adasd-asdasd-asdas-da”或“fds-fdsf-dsfds-fds-f”或...等条目,它会导致我的数据库检查很多资源。

我一直在谷歌阅读数百个链接,他们都使用ip / rate限制,这对我来说不是解决方案;我不能用它。我看过一些博客,当用户点击某个错误页面时,他们会将用户重定向到Google,这样他们就可以摆脱攻击。但是如何在不关闭整个系统的情况下检查数据库中的每个请求?

要解决这个问题真的很难,因为我的合法网址是:

www.example.com/how-to-buy-a-flow
www.example.com/make-your-dad-happy
...

我已经有19000个帖子,每次用户发送www.example.com/fdsfds-fdsfs-dfds之类的请求时,我需要在数据库中检查它是否存在。

我已经在使用CloudFlare,它做得很好,但我仍然无法找到如何以简单的方式检查请求是否不在数据库中。

4 个答案:

答案 0 :(得分:1)

您可以使用iptables或htaccess阻止攻击者IP。

答案 1 :(得分:1)

看看fail2ban。您可以将其配置为监视apache日志以查找生成的404错误,并通过iptables自动禁止每秒超过X 404错误的IP(N秒)。

设置非常简单。

答案 2 :(得分:0)

...或者,作为上述建议的补充,您可以安装方便的插件block-bad-queries

当然,修改.htaccess和/或设置iptables防火墙适用于高级用户,并且您可以完全访问您的Web服务器环境。

答案 3 :(得分:0)

我公司的WordPress网站也是多次DDoS攻击的受害者。有一些策略对我们来说非常宝贵:

  • 使用fail2ban(监控/var/log/auth.log for SSH暴力)
  • 使用.htaccess阻止/wp-login.php/wp-admin.php未经授权的IP地址
  • 安装Wordfence(在保护WordPress方面非常有价值)
  • 安装Bad Behavior(用于pingback攻击)