3 redhat nginx denial-of-service apache-2.2
我有一个奇怪的问题——在一个高流量的网站(每月有数百万的访问者)上,每天我们都会遇到大约 20 次左右的情况,其中一个主机开始不断地请求同一页面,一遍又一遍——每秒多次,对于从几分钟到一整天的任何时间长度。
这次攻击显然不是恶意的,因为我已经回溯了 IP 地址并将它们与我采访过的一些注册用户进行了匹配。他们说,当发生这种情况时,我们网站上的一个 javascript 计数器“不断刷新”,他们的计算机变慢,但在其他情况下仍然可以使用。它不会在每个页面加载时发生,而是偶尔发生。
日志命中具有以下特征:
我们对如何处理这件事束手无策。一个简单的 DoS 过滤器是不合适的——我们有这个,并且触发它的阈值远高于一秒钟的单个页面请求(没有相关图像、CSS 等)。
堆栈是 LAMP、Redhat 安装、PHP 5.2、Apache 2.2.3,带有作为软件负载平衡器运行的 NGINX 框。
这正在破坏我们的网站——请帮忙!在没有好的想法的情况下,我们将求助于编写一个虚拟过滤器,将 IP+URI 的键存储在 memcached 中,并递增每个页面请求。一旦它在某个时间段内超过某个阈值,我们将进一步发出 403 个请求。但是,我认为这不是网络堆栈中处理此问题的合适位置。
感谢您所做的一切贡献!
根据您自己的描述,我建议您首先移除那个计数器,看看这是否真的有影响。它是如此容易测试,我很惊讶你还没有这样做。
| 归档时间: |
|
| 查看次数: |
1588 次 |
| 最近记录: |