html5 防止脚本攻击,shell防ddos攻击脚本(二)
在上一篇shell防ddos攻擊腳本(一)中,我給大家發(fā)了個腳本,那只是針對單機的,如果是在負載均衡下的話,很容易把自己的服務(wù)器ip給誤封,所以這篇文章就給大家發(fā)個可以添加白名單的shell腳本.
系統(tǒng):centos 5.9 64位
腳本內(nèi)容:
vi ip-dos-cc.sh
#!/bin/bash
netstat -an| grep :80 |grep -v -E '127.0|0.0|10.0'|awk '{ print $5 }' | sort|awk -F: '{print $1}' | uniq -c | awk '$1' | awk '$2 != ""' >/root/ddos/black.txt
cnt=0
for i in `awk '{print $2}' /root/ddos/black.txt`
do
if [ ! -z "$i" ];
then
COUNT=`grep $i /root/ddos/black.txt | awk '{print \$1}'`
DEFINE="20"
ZERO="0"
if [ $COUNT -gt $DEFINE ];
then
grep $i /root/ddos/white.txt /dev/null
if [ $? -gt $ZERO ];
then
IPEX=`iptables -nL | grep "$i"`
if [ -z "$IPEX" ];
then
echo "$COUNT $i"
iptables -I INPUT -s $i -j DROP
echo -e "[`date "+%Y-%m-%d %T"`] IP: $i\tCOUNT: $COUNT" /root/ddos/banned.log
fi
fi
fi
((cnt=cnt+1))
fi
done
echo "[`date "+%Y-%m-%d %T"`] Script runned, found $cnt" > /root/ddos/run.log
在/etc/crontab里設(shè)置:
*/1 * * * * root /root/shell/ddos.sh
0 * * * * iptables --flush
第一條是1分鐘執(zhí)行一次防御腳本,第二條是每小時清理一次IP禁止列表.第二條是可選的,主要是為了將已經(jīng)封殺的IP解禁,避免過多的封殺或者誤殺.一個小時的禁止時間也已經(jīng)足夠了.
夜空- 本站版權(quán)
1、本站所有主題由該文章作者發(fā)表,該文章作者與夜空享有文章相關(guān)版權(quán)
2、其他單位或個人使用、轉(zhuǎn)載或引用本文時必須同時征得該文章作者和夜空的同意
3、本帖部分內(nèi)容轉(zhuǎn)載自其它媒體,但并不代表本站贊同其觀點和對其真實性負責(zé)
4、如本帖侵犯到任何版權(quán)問題,請立即告知本站,本站將及時予與刪除并致以最深的歉意
5、原文鏈接:blog.slogra.com/post-389.html
總結(jié)
以上是生活随笔為你收集整理的html5 防止脚本攻击,shell防ddos攻击脚本(二)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机入门在线阅读,电脑入门基础教程..
- 下一篇: 《英雄联盟手游》无限乱斗今天上线:超短C