精简"入口"延缓"拥堵"DiscuzX抵御CC攻击 刷新间隔时间 防刷新设置
CC攻击基础知识:
攻击者控制某些主机不停地发大量数据包给对方器造成器资源耗尽,一直到宕机崩溃。攻击者利用 CC 的这个特点模拟 N 个用户并发连接,而这些连接都是真实、分散的,CC 攻击的请求全都是有效的请求,无法拒绝的请求,不易被察觉,那么后果就是站点的页面访问速度集聚下降,用户访问的时候变的非常非常慢。
所以当我们的站点变的比以往慢很多倍的时候就有可能是被 CC 攻击了。
站点慢了,实际上是并发连接太多,也就是堵了,空间一直处于饱和状态,那么我们必须逐步的延缓还在排队的并发连接进入。
了解CC攻击的原理以后,我们就想提前防御类似的攻击,以免给站点带来安全隐患,可以安装防CC攻击软件,但这些都不是免费的。而 Discuz!不用在服务器上安装防CC软件,为了有效的预防被CC攻击,内置了$_config['security']['attackevasive'] CC攻击防御,可以设置站点的防御级别,参数有1|2|4|8,可以互相组合,来防止大量的非正常请求和正常请求造成的拒绝服务攻击。
看到这里很多朋友肯定有点晕,1|2|4|8 是做什么的,这些数字代表什么意思,我要怎么设置比较合理?请大家仔细往下看:
1代表cookie 刷新限制
当同一个 cookie 请求大于或等于 1 秒时刷新,将被限制访问。
2代表限制代理访问
大家应该都理解什么是代理访问吧?这里就不详细解释了,相信很多站长朋友对代理访问比较熟悉。
利用代理访问是比较常用的一种攻击手段,因为代理可以有效地隐藏自己的身份,也可以绕开所有的防火墙,因为基本上所有的防火墙都会检测并发的TCP/IP连接数目,超过一定数目一定频率就会被认为是Connection-Flood。
使用代理攻击还能很好的保持连接,我们这里发送了数据,代理帮我们转发给对方服务器,我们就可以马上断开,代理还会继续保持着和对方连接(有人利用2000个代理就能产生 35 万并发连接)。
所以限制代理访问可以有效防御CC攻击。
4代表二次请求
开启了二次请求机制,先显示等待 2 秒重新加载然后才会跳转出真实的帖子,如下图所示:
8代表回答问题
当第一次访问时需要回答问题,如下图所示:
答案正确后才可以看到页面的具体内容。
了解了这些数字参数的涵义,我们设置起来就容易的多了,比如我设置成 1|2|4 就代表限制cookie刷新+限制代理访问+开启二次请求。
站点该怎么设置呢?
通过上面的概念性了解,实际的操作开始了,必须要在站点的配置文件中设置正确合理后,才可有效防御CC攻击。
找到站点程序的 config 文件夹,打开 config_global.php 文件,找到
$_config['security']['attackevasive'] = '0';
进行修改即可,0为关闭防御,打开防御可以把0修改为组合的形式,组合为: 1|2, 1|4, 2|8, 1|2|4...等
建议大家使用下面的设置方案:
$_config['security']['attackevasive'] = 1|2|4;
此方案可以通过延缓访问的方式,减轻访问量较大的站点的服务器压力。
此处评论已关闭