网站地图    收藏   

主页 > 系统 > linux系统 >

linux写shell脚本对频繁404ip屏蔽

来源:未知    时间:2019-04-17 10:25 作者:小飞侠 阅读:

[导读] 由于 最近网站一直有不正常的IP访问,而且一直返回404,我都是天天自己慢慢看日志,累的要死,就在网上找了些资料,写了下面的sh脚本,运行脚本,就会把异常IP查找出来丢到文件中...

由于 最近网站一直有不正常的IP访问,而且一直返回404,我都是天天自己慢慢看日志,累的要死,就在网上找了些资料,写了下面的sh脚本,运行脚本,就会把异常IP查找出来丢到文件中.

#!/bin/sh
/usr/bin/tail -n50000 /var/log/nginx/access.log \
| awk '$8 {print $1,$4,$9,$12,$13,$14}' \  #这里主要看你的日志是什么格式,我这第一个是IP,第二个是访问时间 第三个是状态,后面三个是用来取搜索引擎的蜘蛛数据的,
| grep -i -v -E "google|yahoo|baidu|msnbot|FeedSky|sogou" \  #这里是把蜘蛛数据去除
| awk '{print $1,$3}'|sort|uniq -c |sort -rn \ #排序
| awk '{if($1>30 && $3=='404') print "deny "$1,$2,$3";"}' > disip.txt  #如果次数大于30并且是404的,直接丢入disip.txt 备用

然后取到所有IP,你就可以慢慢处理了,以上是php自学网提供。

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论