Chinaunix首页 | 论坛 | 博客
  • 博客访问: 91002
  • 博文数量: 31
  • 博客积分: 1013
  • 博客等级: 准尉
  • 技术积分: 332
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-04 10:49
文章分类
文章存档

2012年(4)

2011年(10)

2010年(17)

我的朋友

分类: 网络与安全

2012-01-11 08:44:46

[转]http://nt.discuz.net/showtopic-52209.html

公布了网站一天之内给很多人扫描,影响正常访问。因为用的是虚拟机,可以动态添加CPU,添加的8个 vcpu,cpu 使用率还是达到25%,而且响应速度机器慢。
网上查询看见apache 有一个 防ddos 的模块,决定试试看。





参考
http://www.toplee.com/blog/278.html

1.下载

cd /tmp

wget mod.zip (20.11 K, 下载次数:935)

tar zxf mod_evasive_1.10.1.tar.gz

2.安装

cd mod_evasive

/usr/local/apache2/bin/apxs -i -a -c mod_dosevasive20.c

3.配置
vi /usr/local/apache2/conf/httpd.conf

添加下面内容

LoadModule dosevasive20_module libexec/apache22/mod_dosevasive20.so


DOSHashTableSize 3097
DOSPageCount 5
DOSSiteCount 100
DOSPageInterval 2
DOSSiteInterval 2
DOSBlockingPeriod 600

4.重新启动apache2,配置完毕。

5.测试

打开IE ,访问网站 不断快速刷新网页就会出现错误提示,说明防泛有效,查看/tmp目录会dow.ip 日志文件。

说明:

DOSHashTableSize 3097 记录和存放黑名单的哈西表大小,如果服务器访问量很大,可以加大该值
DOSPageCount 5 同一个页面在同一时间内可以被统一个用户访问的次数,超过该数字就会被列为攻击,同一时间的数值可以在DosPageInterval参数中设置。
DOSSiteCount 50 同一个用户在同一个网站内可以同时打开的访问数,同一个时间的数值在DOSSiteInterval中设置。
DOSPageInterval 2 设置DOSPageCount中时间长度标准,默认值为1。
DOSSiteInterval 2 设置DOSSiteCount中时间长度标准。
DOSBlockingPeriod 10 被封时间间隔秒,这中间会收到 403 (Forbidden) 的返回。


[root@test logs]# grep 404 access_log | awk -F: '{print $1}' | sort | sort -u  | wc -l
1011


一个晚上有1011 个Ip来扫描



测试下来速度比较块,CPU基本没使用。可以正常使用了。

下一步是能不能分析日志,找出肉鸡的源头。
阅读(1638) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~