亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

如何寫腳本防cc攻擊

九三
161
2020-12-30 18:07:06
欄目: 網絡安全

如何寫腳本防cc攻擊

Shell腳本代碼如下:

#!/bin/bash

#Author:ZhangGe

#Desc:Auto Deny Black_IP Script.

#Date:2014-11-05

#取得參數$1為并發閾值,若留空則默認允許單IP最大100并發(實際測試發現,2M帶寬,十來個并發服務器就已經無法訪問了!)

if [[ -z $1 ]];then

num=50

else

num=$1

fi

#巧妙的進入到腳本工作目錄

cd $(cd $(dirname $BASH_SOURCE) && pwd)

#請求檢查、判斷及拉黑主功能函數

function check(){

iplist=`netstat -an |grep ^tcp.*:80|egrep -v 'LISTEN|127.0.0.1'|awk -F"[ ]+|[:]" '{print $6}'|sort|uniq -c|sort -rn|awk -v str=$num '{if ($1>str){print $2}}'`

if [[ ! -z $iplist ]];

then

>./iplist/black_ip.txt

for black_ip in $iplist

do

#白名單過濾中已取消IP段的判斷功能,可根據需要自行修改以下代碼(請參考前天寫的腳本)

#exclude_ip=`echo $black_ip | awk -F"." '{print $1"."$2"."$3}'`

#grep -q $exclude_ip ./white_ip.txt

grep -q $black_ip ./white_ip.txt

if [[ $? -eq 0 ]];then

echo "$black_ip (white_ip)" >>./black_ip.txt

else

echo $black_ip >>./black_ip.txt

iptables -nL | grep $black_ip ||(iptables -I INPUT -s $black_ip -j DROP & echo "$black_ip `date +%Y-%m-%H:%M:%S`">>./iplist/denylog.txt & echo 1 >./sendmail)

fi

done

#存在并發超過閾值的單IP就發送郵件

if [[ `cat ./sendmail` == 1 ]];then sendmsg;fi

fi

}

#發郵件函數

function sendmsg(){

netstat -nutlp | grep "sendmail" >/dev/null 2>&1 || /etc/init.d/sendmail start >/dev/null 2>&1

echo -e "From: 發郵件地址@qq.com\nTo:收郵件地址@qq.com\nSubject:Someone Attacking your system!!\nIts Ip is" >./message

cat ./black_ip.txt >>./message

/usr/sbin/sendmail -f 發郵件地址@qq.com -t 收郵件地址@qq.com -i <./message

>./sendmail

}

#間隔10s無限循環檢查函數

while true

do

check

#每隔10s檢查一次,時間可根據需要自定義

sleep 10

done

0
会宁县| 达拉特旗| 永平县| 吕梁市| 鹰潭市| 富裕县| 库车县| 来凤县| 阿合奇县| 烟台市| 琼结县| 连云港市| 正安县| 高雄县| 宁海县| 夏河县| 磐安县| 依安县| 合阳县| 富顺县| 安多县| 阿图什市| 高雄市| 应用必备| 岗巴县| 宜阳县| 福州市| 贡山| 赤水市| 烟台市| 军事| 武隆县| 江西省| 正定县| 施甸县| 虹口区| 仁布县| 吉林省| 孟州市| 阳泉市| 鸡东县|