當(dāng)前位置: 首頁(yè)IT技術(shù) → 工作中用到的兩個(gè)安全日志腳本

工作中用到的兩個(gè)安全日志腳本

更多

1 公司服務(wù)器每天關(guān)于SSH攻擊的報(bào)警很煩人,于是就在撫琴煮酒大哥實(shí)例的基礎(chǔ)上改編成以下腳本,略有不同:
#!/bin/bash
#Prevent SSH attack

SLEEPTIME=30
  lastb -n 500| grep -v "^$" | grep -v "btmp" | awk '{print $3}' | sort | uniq -c  | grep -v "公司IP" |sort -nr > attack.log
while true 
 do
  while read line 
    do 
 IP=`echo $line | awk '{print $2}' `
 TIME=`echo $line | awk '{print $1}' `
 if [ "$TIME" -gt 10 ];then
   grep "$IP" deny.log &> /dev/null
   if [ "$?" -ne "0" ]; then
   echo "sshd: $IP" >> /etc/hosts.deny
  fi
fi  
  done < attack.log
/bin/sleep $SLEEPTIME
done 
 
2  線上服務(wù)因?yàn)殚_(kāi)發(fā)的問(wèn)題有些進(jìn)程會(huì)莫名的死掉,需要對(duì)這些&ldquo;弱勢(shì)群體&rdquo;不斷地進(jìn)行監(jiān)控,如果死掉,就立即重啟,于是寫(xiě)了以下腳本來(lái)實(shí)現(xiàn)(以httpd進(jìn)程為例):

#/bin/bash
SLEEPTIME=30
while true
  do
  id=`ps aux | grep httpd | grep -v "grep" | wc -l`
   if [ $id -lt 1 ];  then
      echo "---`date +"%F %H:%M:%S"`-----httpd restart." >> /u/scripts/httpd_monitor.log
      /etc/init.d/httpd start
   fi
 
  sleep $SLEEPTIME
 
done 

 PS:以上腳本均需要使用nohup放在后臺(tái)執(zhí)行,或者使用計(jì)劃任務(wù)也可以!

熱門(mén)評(píng)論
最新評(píng)論
發(fā)表評(píng)論 查看所有評(píng)論(0)
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)