设为首页收藏本站

ZMX - IT技术交流论坛 - 无限Perfect,追求梦想 - itzmx.com

 找回密码
 注册论坛

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

用百度帐号登录

只需两步,快速登录

搜索
查看: 2152|回复: 3

kangle的日志输出格式和nginx不一样吗

[复制链接]

签到天数: 41 天

[LV.5]常住居民I

发表于 2022/6/12 09:12 | 显示全部楼层 |阅读模式 |Firefox 101.0|Windows 10
天涯海角搜一下: 百度 谷歌 360 搜狗 有道 雅虎 必应 即刻
看见了个nginx的 CC攻击告警脚本
用kangle试了下,应该是日志输出格式不一样,所以不成功,哪位大神看下这个脚本怎么改成kangle的日志格式
日志的开头的格式必须为例如 x.x.x.x - - [22/Nov/2017:13:20:02 -0500] "GET /xxxxxx HTTP/1.1" 200 3386,也就是IP在首列,时间格式与此示例相同,请求URL在第七列,请求长度在第十列,一般 nginx 日志的默认格式应该是这样,如果是其他的服务器软件或者日志格式不同请根据自己的情况魔改 sh脚本里的相关截取日志信息的代码

下图是默认是这个脚本的日志格式nginx测试成功,不知如何改为kangle的日志格式,kangle的CC攻击显示是在access.log还是server.log

shell

shell



#临时文件
TMP_LOG=`mktemp`
TMP_IP_LIST=`mktemp`
TMP_LIST=`mktemp`

#得到部分日志
grep -h "$NOW_DATE" $LOG_FILES > $TMP_LOG
#得到IP访问量排序
grep -h "$NOW_DATE" $TMP_LOG | awk '{print $1}' | sort | uniq -c | sort -nr > $TMP_IP_LIST
#得到IP访问数据总大小'
IFS_old=$IFS
IFS=$'\n'
for LIST_LINE in `cat $TMP_IP_LIST`
do
        CUR_TIMES=`echo $LIST_LINE | awk '{print $1}'`
        CUR_IP=`echo $LIST_LINE | awk '{print $2}'`
        #判断重复请求次数
        CUR_REPEAT=`grep -h $CUR_IP $TMP_LOG | awk '{print $7}' | sort | uniq -c | sort -nr | head -1 | awk '{print $1}'`
        if [ "${1}x" = "--testx" ]; then
                echo -e "\033[033m[${NOW_DATE}x]\033[0m\t$CUR_TIMES\t$CUR_REPEAT\t$CUR_IP"
        fi
        if [ $CUR_REPEAT -ge $LIMIT_REPEAT ]; then
                echo "$CUR_IP REPEAT:$CUR_REPEAT>=$LIMIT_REPEAT" >> $TMP_LIST
        #判断访问量
        elif [ $CUR_TIMES -ge $LIMIT_TIMES ]; then
                TOTAL_FLOW=0
                #某IP的单条流量记录
                for LINE_LOG_FLOW in `grep -h $CUR_IP $TMP_LOG | awk '{print $10}'`
                do
                        TOTAL_FLOW=$((TOTAL_FLOW+LINE_LOG_FLOW))
                done
                #如果流量大于设定的最大流量值则Ban
                if [ $TOTAL_FLOW -ge $LIMIT_FLOW ]; then
                        echo "$CUR_IP FLOW:$TOTAL_FLOW>=$LIMIT_FLOW" >> $TMP_LIST
                fi
        fi
done
[发帖际遇]: hackaq 在论坛发帖时没有注意,被小偷偷去了 5 樱币. 幸运榜 / 衰神榜
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复

使用道具 举报

签到天数: 41 天

[LV.5]常住居民I

 楼主| 发表于 2022/6/13 22:04 | 显示全部楼层 |Firefox 101.0|Windows 10
小樱 发表于 2022/6/12 18:37
市面上大部分日志分析软件都支持kangle的日志
kangle的ip位置也是放在第一位的
获取ip列表例子例如

好的 会分享出来 小樱咱们有群吗 想没事多去学习
欢迎光临IT技术交流论坛:http://bbs.itzmx.com/
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册论坛 新浪微博账号登陆用百度帐号登录

本版积分规则

手机版|Archiver|Mail me|网站地图|IT技术交流论坛 ( 闽ICP备13013206号-7 )

GMT+8, 2025/9/10 10:45 , Processed in 0.145782 second(s), 25 queries , MemCache On.

Powered by itzmx! X3.4

© 2011- sakura

快速回复 返回顶部 返回列表