Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

精简“入口”延缓“拥堵”Discuz!教你如何用最经济的方式抵御CC攻击

  [复制链接]
玻璃屋女孩 发表于 2011-9-28 12:27:00 | 显示全部楼层 |阅读模式
本帖最后由 玻璃屋女孩 于 2011-9-28 14:33 编辑

很多站长受到 CC 攻击的困扰,经常会听到这样的声音:“唉,我的网站又被攻击了?该如何处理?” Discuz!用最经济(不用花钱)的方式采用延缓访问的特性助您抵御 CC 攻击。

我的站被黑了,是CC攻击?木马?还是?

前不久一位朋友很焦急的问我,“亲,我站点好像被黑了,不知是被CC了还是中了木马,会员们都抱怨半天打不开,真是急死我了。”这种问题可能很多做站的朋友都遇到过,其实了解了 CC 攻击的原理就很容易分辨出来。

攻击者控制某些主机不停地发大量数据包给对方器造成器资源耗尽,一直到宕机崩溃。攻击者利用 CC 的这个特点模拟 N 个用户并发连接,而这些连接都是真实、分散的,CC 攻击的请求全都是有效的请求,无法拒绝的请求,不易被察觉,那么后果就是站点的页面访问速度集聚下降,用户访问的时候变的非常非常慢。
所以当我们的站点变的比以往慢很多倍的时候就有可能是被 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 文件,找到

  1. $_config['security']['attackevasive'] = '0';
复制代码

进行修改即可,0为关闭防御,打开防御可以把0修改为组合的形式,组合为: 1|2, 1|4, 2|8, 1|2|4...等

建议大家使用下面的设置方案:
  1. $_config['security']['attackevasive'] = 1|2|4;
复制代码

此方案可以通过延缓访问的方式,减轻访问量较大的站点的服务器压力。
希望本文对各位站长朋友有所帮助,有不明白的地方大家可以回帖详细说明。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

评分

5

查看全部评分

北北″ 发表于 2011-9-28 12:50:59 | 显示全部楼层
沙发支持!
回复

使用道具 举报

hi.boyfriend 发表于 2011-9-28 12:51:55 | 显示全部楼层
回复

使用道具 举报

nimeilai 发表于 2011-9-28 12:53:27 | 显示全部楼层
我就是其中一个  我顶一下
回复

使用道具 举报

hi.boyfriend 发表于 2011-9-28 12:55:12 | 显示全部楼层
大家应该都理解什么是代码访问吧?
回复

使用道具 举报

nimeilai 发表于 2011-9-28 12:59:30 | 显示全部楼层
楼主帮忙看看我这样设置的对吗?
  1. // 站点安全设置
  2. $_config['security']['authkey']                        = 'asdfasfas';        // 站点加密密钥
  3. $_config['security']['urlxssdefend']                = true;                // 自身 URL XSS 防御
  4. $_config['security']['attackevasive']                = 1|2|4;                // CC 攻击防御 1|2|4
复制代码
回复

使用道具 举报

大鹏! 发表于 2011-9-28 12:59:52 | 显示全部楼层
强力支持!
回复

使用道具 举报

kookxiang 发表于 2011-9-28 13:42:14 来自手机 | 显示全部楼层
hi.boyfriend 发表于 2011-9-28 12:55
大家应该都理解什么是代码访问吧?

代理……
被拼音祸害的…
回复

使用道具 举报

changkai 发表于 2011-9-28 14:25:46 | 显示全部楼层
前排支持
回复

使用道具 举报

 楼主| 玻璃屋女孩 发表于 2011-9-28 14:35:37 | 显示全部楼层
nimeilai 发表于 2011-9-28 12:59
楼主帮忙看看我这样设置的对吗?

对的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-16 12:25 , Processed in 0.040147 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表