全部博文(146)
分类: LINUX
2009-12-08 14:14:41
mod_evasive 是Apache服务器的防DDOS的一个模块。对于WEB服务器来说,是目前比较好的一个防护DDOS攻击的扩展模块。虽然并不能完全防御DDOS攻击,但在一定条件下,还是起到缓冲Apache服务器的压力。
一. 模块的安装
有两种安装方法,一种是重新编译安装,还有一种是使用apxs直接安装模块。在这里我使用的是第二种方法。
1.首先是下载并解压模块包,然后进入目录:
/usr/local/http-XXX/bin/apxs –i –a -c mod_evasive20.c
再重启apache就可以了。
2.编辑httpd.conf,在LoadModule evasive20_module modules/mod_evasive20.so 这一行下加入一下几行:
DOSHashTableSize 3097
DOSPageCount 8
DOSSiteCount 70
DOSPageInterval 5
DOSSiteInterval 5
DOSBlockingPeriod 10
还有一些可选项:DOSEmailNotify DOSSystemCommand DOSLogDir等等。
DOSPageCount 在每个PageInterval时间内,对同一页面请求数的上限,超过该上限则该IP地址将会被阻止访问一段时间并返回403
DOSSiteCount 在每个SiteInterval时间内,该IP地址发出的总的请求数的上限,一旦超过该上限,则该IP地址将被阻止访问一段时间
DOSPageInterval 对DOSPageCount的时间间隔
DOSSiteInterval 对DOSSiteCount的时间间隔
DOSBlockingPeriod 被阻止访问的时间间隔
DOSEmailNotify 当有IP地址被阻止访问的时候会发送邮件到该地址
DOSSystemCommand 设置了该值,则当有IP被阻止访问的时候将会执行所设置的命令
DOSLogDir 设置一个临时目录
DOSWhitelist 设置白名单,这当中的IP地址永远不会被阻止
二.测试
使用mod_evasive自带的测试工具,test.pl 测试结果