博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
工作中用到的两个脚本
阅读量:6091 次
发布时间:2019-06-20

本文共 942 字,大约阅读时间需要 3 分钟。

 

 

1 公司服务器每天关于SSH攻击的报警很烦人,于是就在抚琴煮酒大哥实例的基础上改编成以下脚本,略有不同:

  1. #!/bin/bash 
  2. #Prevent SSH attack 
  3. SLEEPTIME=30 
  4.   lastb -n 500| grep -v "^$" | grep -v "btmp" | awk '{print $3}' | sort | uniq -c  | grep -v "公司IP" |sort -nr > attack.log 
  5. while true  
  6.  do 
  7.   while read line  
  8.     do  
  9.  IP=`echo $line | awk '{print $2}' ` 
  10.  TIME=`echo $line | awk '{print $1}' ` 
  11.  if [ "$TIME" -gt 10 ];then 
  12.    grep "$IP" /etc/hosts.deny &> /dev/null    
  13. if [ "$?" -ne "0" ]; then 
  14.    echo "sshd: $IP" >> /etc/hosts.deny 
  15.   fi 
  16. fi   
  17.   done < attack.log 
  18. /bin/sleep $SLEEPTIME 
  19. done  

 

2  线上服务因为开发的问题有些进程会莫名的死掉,需要对这些“弱势群体”不断地进行监控,如果死掉,就立即重启,于是写了以下脚本来实现(以httpd进程为例):
 
  1. #/bin/bash 
  2. SLEEPTIME=30 
  3. while true 
  4.   do 
  5.   id=`ps aux | grep httpd | grep -v "grep" | wc -l` 
  6.    if [ $id -lt 1 ];  then 
  7.       echo "---`date +"%F %H:%M:%S"`-----httpd restart." >> /u/scripts/httpd_monitor.log 
  8.       /etc/init.d/httpd start 
  9.    fi 
  10.  
  11.   sleep $SLEEPTIME 
  12.  
  13. done  

 PS:以上脚本均需要使用nohup放在后台执行,或者使用计划任务也可以!

本文转自 490999122 51CTO博客,原文链接:http://blog.51cto.com/lyp0909/770079,如需转载请自行联系原作者
你可能感兴趣的文章
React Native 极光推送填坑(ios)
查看>>
Terratest:一个用于自动化基础设施测试的开源Go库
查看>>
修改Windows远程终端默认端口,让服务器更安全
查看>>
扩展器必须,SAS 2.0未必(SAS挺进中端存储系统之三)
查看>>
Eclipse遇到Initializing Java Tooling解决办法
查看>>
while((ch = getchar()) != '\n')
查看>>
好程序员web前端分享JS检查浏览器类型和版本
查看>>
Oracle DG 逻辑Standby数据同步性能优化
查看>>
exchange 2010 队列删除
查看>>
「翻译」逐步替换Sass
查看>>
H5实现全屏与F11全屏
查看>>
处理excel表的列
查看>>
C#数据采集类
查看>>
quicksort
查看>>
【BZOJ2019】nim
查看>>
LINUX内核调试过程
查看>>
【HDOJ】3553 Just a String
查看>>
Java 集合深入理解(7):ArrayList
查看>>
2019年春季学期第四周作业
查看>>
linux环境配置
查看>>