linux ddos防御攻击

Posted Rohero

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux ddos防御攻击相关的知识,希望对你有一定的参考价值。

Linux Ddos防御攻击

[[email protected] ~]# netstat -ntu |awk ‘{print $5}‘|grep ‘[0-9]‘|cut -d: -f1 |sort |uniq -c|sort -n   #查看统计ip链接数

 

安装配置ddos deflate

[[email protected] ~]# cd /usr/local/src

[[email protected] src]# wget http://www.inetbase.com/scripts/ddos/install.sh

[[email protected] src]# chmod 744 install.sh    #增加可执行权限

[[email protected] src]# ./install.sh      #执行安装,安装完后输入q退出说明

[[email protected] ddos]# cd /usr/local/ddos

[[email protected] ddos]# ls

ddos.conf  ddos.sh  ignore.ip.list  LICENSE

##############################################################################

ddos.conf -- DDoS-Deflate 的配置文件,其中配置防止ddos时的各种行为 ddos.sh   -- DDoS-Deflate 的主程序,使用shell编写的,整个程序的功能模块 ignore.ip.list -- 白名单,该文件中的ip超过设定的连接数时,也不被 DDoS-Deflate 阻止 LICENSE   -- DDoS-Deflate 程序的发布协议

DDoS deflate的默认配置位于/usr/local/ddos/ddos.conf ,默认如下:

 

PROGDIR="/usr/local/ddos" PROG="/usr/local/ddos/ddos.sh" IGNORE_IP_LIST="/usr/local/ddos/ignore.ip.list" //IP地址白名单 CRON="/etc/cron.d/ddos.cron" //定时执行程序 APF="/etc/apf/apf" IPT="/sbin/iptables"

 

FREQ=1 //检查时间间隔,默认1分钟

NO_OF_CONNECTIONS=150 //最大连接数,超过这个数IP就会被屏蔽,一般默认即可

APF_BAN=1 //使用APF还是iptables。推荐使用iptables,将APF_BAN的值改为0即可。

KILL=1 //是否屏蔽IP,默认即可

EMAIL_TO="root" //当IP被屏蔽时给指定邮箱发送邮件,推荐使用,换成自己的邮箱即可

BAN_PERIOD=600 //禁用IP时间,默认600秒,可根据情况调整

查看/usr/local/ddos/ddos.sh文件的第117行

netstat -ntu | awk ‘{print $5}‘ | cut -d: -f1 | sort | uniq -c | sort -nr > $BAD_IP_LIST

修改为:

netstat -ntu | awk ‘{print $5}’ | cut -d: -f1 | sed -n ‘/[0-9]/p’ | sort | uniq -c | sort -nr > $BAD_IP_LIST

在crontab中添加没分钟执行ddos.sh脚本

# crontab -e

*/1 * * * * /bin/bash /usr/local/ddos/ddos.sh

 

测试ddos防御。

测试工具ab,源码安装Apache2一般有安装ab。可用which ab查看是否有安装。

如果没有安装可执行

# yum -y install httpd-tools

[[email protected] Desktop]$ ab -n 150 192.168.0.102/

[[email protected] ~]# netstat -ntu |awk ‘{print $5}‘ |cut -d: -f1 |grep ‘[0-9]‘ |sort |uniq -c |sort -nr

     151 192.168.0.101

      1 23.32.248.91

[[email protected] Desktop]# iptables -L

Chain INPUT (policy ACCEPT)

target     prot opt source               destination         

DROP       all  --  192.168.0.101        anywhere 

这样就禁止了192.168.0.101的访问。

[[email protected] Desktop]# iptables -F    #清除规则

[[email protected] Desktop]# service iptables save   #保存规则

以上是关于linux ddos防御攻击的主要内容,如果未能解决你的问题,请参考以下文章

Linux下防御DDOS攻击的操作梳理

Linux下防御DDOS攻击的操作梳理

DDOS攻击网站能不能被防御呢

DDoS攻击都有哪些防御方法?怎么做好防御工作?

如何有效防御DDOS攻击?

DDOS攻击网站能不能被防御呢?