apache防止ddos攻击的几个有用工具

37 篇文章 0 订阅
4 篇文章 0 订阅

一:
来 自http://www.inetbase.com/scripts/的ddos脚本。这套脚本的开发初衷就是为了防止ddos攻击,它周期性运行(比如 每隔一秒),每次运行时使用netstat命令记录下当前的网络连接情况,从记录的数据中筛选出客户机的IP并统计出每个客户IP的连接数,将连接数与设 定的阈值相比,如果一个IP有过多的连接,它将被放入黑名单。放入黑名单的IP在一段时间内(比如10分钟以内)向服务器发送的请求将被iptables 丢弃。
这个脚本的不足的地方是:当一个IPV4的连接使用IPV6的socket时,它的地址是类似::ffff:1.2.3.4这种形式的,脚本中没计算这样的地址,所以需要对脚本做一个略微的改动。

二:
来 自http://www.symantec.com/connect/articles/hardening-tcpip-stack-syn-attacks 的方法。这里的配置有三个思路:1)增大tcp的等待队列长度,使之能容纳更多的SYN_RECV请求。2)减小一个请求在tcp队列中的等待时间,使 SYN_RECV这种半连接请求尽快过期以让出地方给那些正常的请求。3)开启tcp_syncookies。关于tcp syn-cookies,在http://cr.yp.to/syncookies.html有详细介绍。
以上三个思路,在linux中的实现:
1)增大队列长度:

# sysctl -w net.ipv4.tcp_max_syn_backlog="2048" 

2)减小等待时间:
改变/proc/sys/net/ipv4/tcp_synack_retries文件中的值。
3)开启syn-cookies:
[root@jcwkyl ~]# echo 1 > /proc/sys/net/ipv4/tcp_syncookies

三:
来自http://dominia.org/djao/limitipconn2.html的一个apache的模块。这个模块叫做mod_limitipconn,用来限定某个Direcotry或者Location的最大连接数。

四:
来自http://bwmod.sourceforge.net/一个apache模块。这个模块叫做mod_bw,用来限制某个virtual host下的网络带宽,可以限定大文件下载的速率,防止网络带宽被迅速耗尽。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值