DDOS***类型以及iptables防范ddos脚本

一. 常见的DDos***类型html

SYN Flood:是当前最流行的DoS(拒绝服务***)与,这是一种利用TCP协议缺陷,发送大量伪造的TCP链接请求,从而使得被***方资源耗尽(CPU满负荷或内存不足)的***方式。bash

Smurf:该***向一个子网的广播地址发一个带有特定请求(如ICMP回应请求)的包,而且将源地址假装成想要***的主机地址。子网上全部主机都回应广播包请求而向被***主机发包,使该主机受到***。网络

Land-based:***者将一个包的源地址和目的地址都设置为目标主机的地址,而后将该包经过IP欺骗的方式发送给被***主机,这种包能够形成被***主机因试图与本身创建链接而陷入死循环,从而很大程度地下降了系统性能ide

Ping of Death:根据TCP/IP的规范,一个包的长度最大为65536字节。尽管一个包的长度不能超过65536字节,可是 一个包分红的多个片断的叠加却能作到。当一个主机收到了长度大于65536字节的包时,就是受到了Ping of Death***,该***会形成主机的宕机。性能

Teardrop:IP数据包在网络传递时,数据包能够分红更小的片断。***者能够经过发送两段(或者更多)数据包来实现TearDrop***。第一个包的偏移量为0,长度为N,第二个包的偏移量小于N。为了合并这些数据段,TCP/IP堆栈会分配超乎寻常的巨大资源,从而形成系统资源的缺少甚至机器的从新启动。htm

二. 如何检测是否遭受了DDos***blog

第一种方法:这里有一条很是实用的命令ip

       # netstat -an|grep SYN_RECV|wc –l内存

       若是显示的数据比较大的话,你极可能已经中招了。ci

第二种方法:用监控软件,好比mrtg或cacti均可以,好比下面显示,流量在某一时刻忽然剧增

       p_w_picpath

三.  如何预防DDos,这里有一个很是实用的脚本

#!/bin/bash

netstat -an|grep SYN_RECV|awk '{print$5}'|awk -F: '{print$1}'|sort|uniq -c|sort -rn|awk '{if ($1 >5)  print $2}' >> /tmp/dropip

for i in $(cat /tmp/dropip)

do

/sbin/iptables -A INPUT -s $i -j DROP

echo “$i kill at `date`” >>/var/log/ddos

done

该脚本会把处于SYN_RECV而且数量达到5个的ip作统计,而且写到iptables的INPUT链作拒绝。

相关文章
相关标签/搜索