安装方法:
1、下载附件中的压缩包,解压并拷贝mod_dosevasive22.dll到Apache安装目录下的modules目录(当然也可以是其他目录,需要自己修改路径)。
2、修改Apache的配置文件http.conf。
添加以下内容
LoadModule dosevasive22_module modules/mod_dosevasive22.so
DOSHashTableSize 3097
DOSPageCount 3
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
其中DOSHashTableSize 3097 记录黑名单的尺寸
DOSPageCount 3 每个页面被判断为dos攻击的读取次数
DOSSiteCount 50 每个站点被判断为dos攻击的读取部件(object)的个数
DOSPageInterval 1 读取页面间隔秒
DOSSiteInterval 1 读取站点间隔秒
DOSBlockingPeriod 10 被封时间间隔秒
mod_dosevasive v1.10
什么是mod_dosevasive?
mod_dosevasive是一种提供躲避 HTTP DOS/DDOS攻击或暴力强制攻击的apache模块。它同样可以用作网络探测和管理的工具,通过简单的配置,就可以同ipchains(ip链?)防 火墙,路由器等设备进行对话。并通过email或系统日志提供报告。
发现攻击是通过创建一个内建的IP地址和URIs的动态哈希表来完成,并且阻止同一ip在以下的情况:
1.在同一秒多次请求同一页面
2.对同一child(对象?)作出超过50个并发请求
3.被列入黑名单的ip
这种方式在单点攻击和分布式多点攻击的状况下都能很好工作,但如同其它的防黑软件一样,只是针对于那些对网络带宽和处理器消耗的攻击,所以这就是为什么我们要推荐你将它与你的防火墙和路由器配合使用,因为这样才能提供最大限度的保护。
这 个模块有一个内建的滤除机制和级别设定,对付不同情况,正因如此合法请求不会受到妨碍,即使一个用户数次连击“刷新”,也不会受到影响,除非,他是故意这 样做的。mod_dosevasive完全可以通过apache配置文件来配置,很容易就可以集成到你的web服务器,并且容易使用。
DOSHashTableSize
----------------
哈希表的大小决定每个子级哈希表的顶级节点数,越多则越可避免反复的查表,但会占据更多内存,如果你的服务器要应付很多访问,那就增大它。The value you specify will automatically be tiered up to
the next prime number in the primes list (see mod_dosevasive.c for a list
of primes used).
DOSPageCount
------------
规定请求同一页面(URI)的时间间隔犯规的次数,一旦超过,用户ip将被列入黑名单
DOSSiteCount
------------
规定请求站内同一物件的时间间隔犯规的次数,一旦超过,用户ip将被列入黑名单
DOSPageInterval
---------------
同一页面的规定间隔时间,默认为1秒
DOSSiteInterval
---------------
站内同一物件的时间间隔,默认为1秒
DOSBlockingPeriod
-----------------
The blocking period 是规定列入黑名单内ip的禁止时限,在时限内,用户继续访问将收到403 (Forbidden)的错误提示,并且计时器将重置。由于列入黑名单后每次访问都会重新计时,所以不必将时限设置太大。在Dos攻击下,计时器也会保持 重置
DOSEmailNotify
--------------
假如这个选项被设置,每个ip被列入黑名单时,都将发送email通知。但有机制防止重复发送相同的通知
注意:请确定mod_dosevasive.c (or mod_dosevasive20.c)已正确配置。
默认配置是 "/bin/mail -t %s"
%s 是email发送的目的地址,假如你是linux或其它使用别的邮箱的操作系统,你需要修改这里
DOSSystemCommand
----------------
假如设置了此项,当有ip被列入黑名单,指定的系统命令将被执行,此项功能被设计为受攻击时可以执行ip过滤器和其它的工具软件,有内建机制避免对相同攻击作重复反应
用
1