#!/bin/bash
cat /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c | awk '{{ print $2 "=" $1 }}' > /opt/black_list.txt for blakc in `cat /opt/black_list.txt`
do
IP = `echo $black | awk -F= '{ print $1}'`
SEC = `echo $black | awk -F= '{ print $2}'`
if [[ $SEC -get 10 ]] ;then
grep $IP /etc/hosts.deny >/dev/null
if [[ $? -gt 0 ]];then
echo 'sshd:$IP:deny' >> /etc/hosts.deny
fi
fi
done

解释:

  第一行过滤secure 日志文件第一个awk 以空格分隔是过滤出以failed 这一行中倒数四列,“”sort“” 排序 "uniq -c"  在每一列的旁边显示次数 第二个awk 调换查询出来的ip 和 次数调换位置并且以等号相连接

第二行 使用for 循环遍历文件

  第四,五行 过滤出ip和次数

第一个if  如果次数大于10次先查看 ip 是否已经存在 第一二个if 如果上次结果等于0 则写入hosts.deny 文件

最新文章

  1. VS2015+Win10 调试DirectX 报错
  2. html小技巧
  3. 自学H5第一天笔记
  4. jQuery之元素筛选
  5. ubuntu使用
  6. Repeater的ItemCommand事件(LinkButton)
  7. MySQL开发总结(有点长..耐心看)
  8. 在ZABBIX平台上通过SNMP协议监控网络设备
  9. Angularjs-Forms(表单)
  10. 《java.util.concurrent 包源码阅读》10 线程池系列之AbstractExecutorService
  11. configure: error: no acceptable C compiler found in $PATH 问题解决
  12. bzoj5281/luogu4377 Talent Show (01分数规划+背包dp)
  13. Java之旅_面向对象_多态
  14. 机器学习【工具】:Numpy基础
  15. 云计算SPI(SaaS、PaaS、IaaS)
  16. 05-老马jQuery教程-动画
  17. linux 安装MySql 5.7.20
  18. C#中委托如何使用?(转帖)
  19. JMeter UI 启动时报错
  20. Qt532_WebKit_SSL问题

热门文章

  1. win32com操作word 第三集:Range精讲(一)
  2. ArcGIS实现打点、线路图、色块、自定义弹窗
  3. 超级容易理解的Three.js中的物体rotation
  4. SpringMVC学习笔记 - 第二章 - SSM整合案例 - 技术整合、统一结果封装、统一异常处理、前后联调、拦截器
  5. 简述 JavaScript 的执行机制
  6. 记一次 .NET 某医保平台 CPU 爆高分析
  7. 基于OpenGL绘制shp文件
  8. ABP微服务系列学习-搭建自己的微服务结构(一)
  9. lama-cleaner全部命令行参数
  10. go 语言 for循环的一个坑