Stop DDOS. Shell script to find IPs with connections higher than 80 and block in firewall & Also send notification mails with the blocked IP(s).
#!/bin/bash ################################################### # Script Name : StopDdosAttack # Created By : Jino Joseph # Created Date : 20-Mar-2013 # Last Modified : 21-Mar-2013 # Purpose : Finds the IPs with connections higher than 80 and block in firewall & # Also send notification mails with the blocked IP(s). ################################################### netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head -5 | sed -e 's/^[ \t]*//' | sed -e 's/ /#/g' > result.txt CSF=/usr/sbin/csf FIREWALL=0 IPCOUNT=`cat result.txt | wc -l` ITERATION=0 # Key to check if the loop is finished for restarting the firewall for i in `cat result.txt`; do echo $i > temp.txt; No=$(cat temp.txt | gawk -F '#' '{print $1}'); IP=$(cat temp.txt | gawk -F '#' '{print $2}'); Num=${No/\.*} if [ $Num -gt 80 ] && [ $IP != '127.0.0.1' ] then $CSF...