CentOS7 下一個利用安全日至和防火墻防止暴力破解的SHELL腳本
阿新 • • 發佈:2018-01-27
failed 暴力 shel fire led wall 第一次運行 bin 行處理
#!/bin/bash
#第一次運行創建記錄文件
-f 1.txt || touch 1.txt
while :
do
#查看日誌中登陸失敗的ip次數超過10次的用戶ip
fip=`awk ‘/Failed/{ip[$11]++;}END{for (i in ip){if (ip[i]>10){print i}}}‘ /var/log/secure`
#循環取出登陸失敗超過十次的ip進行處理
for i in $fip
do
#查看處理記錄文件如果該ip沒有存在處理記錄中說明是沒有處理過該ip
a=`awk -F: -v i=$i ‘$2==i{print}‘ 1.txt | wc -l`
#如果有查到結果則說明已經處理過該ip
if [ "$a" -ne 0 ]
then
echo "服務器安全"
else
#將新的攻擊ip加入防火墻阻止(方入drop的區域則該ip發送的數據包會立刻丟棄不做回應)區域
firewall-cmd --zone=drop --add-source=$i && echo "成功將:$i:加入防火墻block區域" >> 1.txt
fi
done
#120s執行一次
sleep 120
done
CentOS7 下一個利用安全日至和防火墻防止暴力破解的SHELL腳本