Apache的mod_evasive模块
mod_evasive 模块的目的在于防止HTTP DoS或者DDoS。一般的设置项如下:
#place this code in the httpd.conf
<IfModule evasive_module>
#optional directive (default value equals to 1024)
DOSHashTableSize 1024
#obligatory directives (if even one of them is not set, malfunctioning is possible)
DOSPageCount 10
DOSSiteCount 150
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
</IfModule>
里面可用的指令如下:
Name Description
DOSHashTableSize 定义HashTable的大小
DOSPageCount 定义对同一个页面的访问次数(或者URI)
DOSSiteCount 定义同一个Client对同网站访问的总次数
DOSPageInterval 页面访问统计的间隔,为1时的意思是1秒钟重置一次PageCount的计数器
DOSSiteInterval 对网站访问的统计间隔
DOSBlockingPeriod 一个Client被禁止访问本站的时间
DOSSystemCommand当一个Client被列入黑名单之后,系统会使用的命令,你可以用iptables把该IP封掉
DOSCloseSocket 关闭Socket链接,发送403 forbidden状态码
还有一个白名单。
凡是此名单的IP,统统不进行统计。
DOSWhiteList 127.0.0.1 10.0.0.*
至于DOSPageCount和DOSSiteCount的设置,你可以根据你的日志访问来进行统计。
然后再设置这个值。
===========================全文完===========================
页:
[1]