centos Apcache 防DDOS攻击mod_evasive安装配置

前端之家收集整理的这篇文章主要介绍了centos Apcache 防DDOS攻击mod_evasive安装配置前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
今天服务器受到严重的DDOS攻击,导致远程控制几乎都无法进去,系统基本死机,从网络上找到关于APACHE的防DDOS工具,参考之后发现无法安装,转载过来后做了一些实验和修改

下面给出使用了Apache的防模块mod_evasive,具体安装配置如下:

一、下载模块

--------需要提前安装apxs - Apache 扩展工具
yum install httpd-devel

------进入自己的安装盘位置
cd /usr/local/src

wgethttp://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz
tar xzvf mod_evasive_1.10.1.tar.gz
cd mod_evasive

二、安装模块
1、对于Apache 1.x 请用下面的编译方法

apxs -iac mod_evasive.c

2、对于Apache 2.x 可以用下面的办法;
apxs -cia mod_evasive20.c

最后出现
#############################################################
Libraries have been installed in:
/usr/local/apache/modules

If you ever happen to want to link against installed libraries in a given directory,LIBDIR,you must either use libtool,

and specify the full pathname of the library,or use the `-LLIBDIR' flag during linking and do at least one of the following:

- add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution

- add LIBDIR to the `LD_RUN_PATH' environment variable during linking
- use the `-Wl,-rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for more information,such as the ld(1) and ld.so(8) manual

pages.
----------------------------------------------------------------------
chmod 755 /usr/local/apache/modules/mod_evasive20.so
[activating module `evasive20' in /usr/local/apache/conf/httpd.conf]
[root@localhost mod_evasive]#

##############################################################
表示已经编译写入了apache模块, 查看httpd.conf文件中已经自动添加了计算机
LoadModule evasive20_module modules/mod_evasive20.so

至此,完成了mod_evasive的安装,重启apache服务后,它就开始工作了,这个时候您如果不作任何别的设置,它也可以使用默认配置为您提

供良好的防攻击能力,当然,您也可以自己进行一些参数的定制配置,添加如下参数:

<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 5
DOSSiteCount 50
DOSPageInterval 2
DOSSiteInterval 2
DOSBlockingPeriod 10
</IfModule>

参数简单说明:
DOSHashTableSize 3097 记录和存放黑名单的哈西表大小,如果服务器访问量很大,可以加大该值
DOSPageCount 5 同一个页面在同一时间内可以被统一个用户访问的次数,超过该数字就会被列为攻击,同一时间的数值可以在

DosPageInterval参数中设置。
DOSSiteCount 50 同一个用户在同一个网站内可以同时打开的访问数,同一个时间的数值在DOSSiteInterval中设置。
DOSPageInterval 2 设置DOSPageCount中时间长度标准,默认值为1。
DOSSiteInterval 2 设置DOSSiteCount中时间长度标准。

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

其他可选参数:
DOSEmailNotifyabc@qq.com设置受到攻击时接收攻击信息提示的邮箱地址。

DOSSystemCommand “su – someuser -c ‘/sbin/… %s …’” 受到攻击时Apache运行用户执行的系统命令
DOSLogDir “/var/lock/mod_dosevasive” 攻击日志存放目录/var/lock/mod_dosevasive 一般就可以存放到/tmp目录

三、测试

在mod_evasive_1.10.1.tar.gz解压目录下面有个测试脚本,是用perl写的,如果可以看下一下结果,就表示该模块安装成功。

[root@Centos6 ~] # chmod 755 test.pl
./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 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
HTTP/1.1 403 Forbidden

这个时候,可以到你的/var/log/mod_evasive目录下面发现有一个日志文件,同时你的邮箱也会收到该报警信息。

猜你在找的CentOS相关文章