让Apache免受DDOS***的mod_evasive

 

 

 

服务器遭受到DDOS***,能够说防不胜防,apache

可是做为apache服务器,能够安装一些模块必定程度上减缓DDOS的***服务器

至于想了解DDOS详细信息的朋友,能够到网上搜索一下ide

=================================测试

首先要下载 mod_evasive_1.10.1.tar.gz网站

如今我登录到服务器,准备把 mod_evasive_1.10.1.tar.gz 传送到服务器上spa

进行解压:日志

# tar zxvf mod_evasive_1.10.1.tar.gzget

mod_evasive/
mod_evasive/.cvsignore
mod_evasive/LICENSE
mod_evasive/Makefile.tmpl
mod_evasive/README
mod_evasive/mod_evasive.c
mod_evasive/mod_evasive20.c
mod_evasive/mod_evasiveNSAPI.c
mod_evasive/test.pl
mod_evasive/CHANGELOG
咱们先不进行安装, 解压出来 有一个文件 test.pl ,是用Perl语言写的,
是测试服务器用的, 咱们先来测试一下服务器(在没有安装减缓DDOS的状况)it

进入到目录io

# cd mod_evasive

# chmod 755 test.pl

下面进行测试
[root@localhost mod_evasive]# ./test.pl
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
......................下面省略,太多了,均可以正常访问,没有任何防护DDOS***

===============================================

好了,下面开始 安装,安装后 咱们还会进行测试 , 先后进行对比。

2.安装 (我这里使用apache是 2.2.8的版本)

# cd mod_evasive

注意你本身服务器apache的安装目录和位置,路径可能和个人不同

# /usr/local/apache2/bin/apxs -i -a -c mod_evasive20.c

编译成功。

模块就自动编译安装进 /usr/local/apache2/modules,

自动在httpd.conf里添加

LoadModule evasive20_module modules/mod_evasive20.so
3.配置

# vi /etc/httpd.conf

在配置文件最后面, 添加下面内容

<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 5
DOSSiteCount 100
DOSPageInterval 2
DOSSiteInterval 2
DOSBlockingPeriod 3600
DOSEmailNotify 17rumen@17rumen.com
DOSLogDir "/var/log/mod_evasive"
</IfModule>

保存退出,

新建目录:
mkdir /var/log/mod_evasive
从新启动apache2,配置完毕。

[root@localhost mod_evasive]# /usr/local/apache2/bin/apachectl stop
[root@localhost mod_evasive]# /usr/local/apache2/bin/apachectl start
4.再次测试

./test.pl

HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 200 OK
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden

能够看到已经有一些访问出现 403 Forbidden, 说明配置成功,

必定状况下抵挡防护DDOS的***, 固然若是是服务器机器承受不了,或者

带宽不够, DDOS仍是比较难防的,不过咱们抵挡一部分算一部分。呵呵

===========================================
最后说明配置文件的一些参数表明意思,这里我就很少说了,本身看

这个也是我网上复制下来的。

说明:

DOSHashTableSize 3097
#记录和存放黑名单表大小,若是服务器访问量很大,能够加大该值.
   
DOSPageCount 5       
#同一个页面在同一时间内能够被同一个用户访问的次数,超过该数字就会被列为***,同一时间的数值能够在DosPageInterval参数中设置.

DOSSiteCount 100
#同一个用户在同一个网站内能够同时打开的访问数,同一个时间的数值在DOSSiteInterval中设置。

DOSPageInterval 2
#设置DOSPageCount中时间长度标准,默认值为1。

DOSSiteInterval 2
设置DOSSiteCount中时间长度标准,默认值为1。

DOSBlockingPeriod 3600
#被封时间间隔秒,这中间会收到 403 (Forbidden) 的返回。

DOSEmailNotify 17rumen@17rumen.com
#设置受到***时接收***信息提示的邮箱地址。

DOSLogDir "/var/log/mod_evasive" #***日志存放目录,注意这个目录的权限,是运行apache程序的用户。

相关文章
相关标签/搜索