美文网首页
屏蔽访问URL频繁的IP

屏蔽访问URL频繁的IP

作者: 阿当运维 | 来源:发表于2020-11-05 11:34 被阅读0次

DOS攻击会大量给服务器发出请求,三次握手的第二次服务器给予响应,但客户端不确认,服务器一直在等待超时时间,大量IP以此类推去访问服务器那么将会导致服务器性能大大降低,此脚本就是要将这类短时间内访问极其频繁的IP 找出来,加入防火墙限制访问,减少服务器压力

java网站为例,先来查看tomcat访问日志,192.168.1.6是我客户端IP,后面是访问时间,url 和 状态码


image.png

思路:
我们可以根据自己需求来设立条件,如想要多久时间内的恶意IP,并且针对于uRL等,利用grep
主要的一步在于用awk 把恶意IP过滤出来,还是之前多次用过的定义数组,利用awk数组特性(键值对)
来求出恶意IP。

awk -F" " -v NUMBER=$NUMBER  '{a[$1]++}END{for (i in a) if(a[i]>$NUMBER) print i}')

number是我们自定义的访问次数,当找出的IP超过这个数,视为恶意IP;如果针对url,在grep 设条件。

要用到的awk语法解读:
a[$1]++ 是以$1为键存入数组中,++ 代表每遇到一次相同的$1,长度加1,继续向下查找,也实现了一个去重,这样轻易就能求出 ,同一个IP出现了多少次。 a[i]--键,打印出次数;i --值,打印出IP。

如:-----------找出日志中访问IP超过100次的IP--------------- image.png

脚本如下:

#!/bin/bash

LOG_DIR=/usr/local/tomcat/logs
LOG_NAME=localhost_access_log.2020-11-05.txt
DATE=$(date +%d/%b/%Y:%H:%M)
NUMBER=20

GONGJI_IP=$(tail -n100 $LOG_DIR/$LOG_NAME|grep $DATE |awk -F" " -v NUMBER=$NUMBER  '{a[$1]++}END{for (i in a) if(a[i]>$NUMBER) print i}')
for ip in $GONGJI_IP
do
    if [ $(iptables -L -nv|grep -c $ip) -eq 0 ];then
    
        iptables -I INPUT -s$ip -j DROP
        echo -e "$(date +%F_%T)---- $IP">>/root/drop_ip.log
    fi
done
if [ $? -eq 0 ];then
    echo "脚本运行完成"
    exit
else
    echo "脚本运行失败"
    exit
fi

相关文章

  • 屏蔽访问URL频繁的IP

    DOS攻击会大量给服务器发出请求,三次握手的第二次服务器给予响应,但客户端不确认,服务器一直在等待超时时间,大量I...

  • nginx限制地址访问ip限制

    屏蔽单个ip访问 允许单个ip访问 屏蔽所有ip访问 允许所有ip访问 屏蔽ip段访问 允许ip段访问 配置说明新...

  • 30个Linux Shell脚本经典案例(中)

    1、iptables自动屏蔽访问网站频繁的IP 场景:恶意访问,安全防范 2、判断用户输入的是否为IP地址 IP ...

  • Nginx笔记

    nignx日志统计 1.根据访问IP统计UV 2.统计访问URL统计PV 3.查询访问最频繁的URL 4.查询访问...

  • 常用日志分析命令

    1、总请求数 2、独立IP数 3、每秒客户端请求数 TOP5 4、访问最频繁IP Top5 5、访问最频繁的URL...

  • shell脚本中

    本文目录 11、iptables自动屏蔽访问网站频繁的IP12、判断用户输入的是否为IP地址13、判断用户输入的是...

  • 彻底禁止某IP访问Linux

    彻底禁止某IP访问: #屏蔽单个IP的命令是 iptables-IINPUT-s123.45.6.7-jDROP ...

  • Nginx 查看所有访问IP和封禁IP

    1、统计access.log(/var/log/nginx)中所有IP和访问次数 2、屏蔽IP

  • ELK日志收集

    1.找出访问排名前10的IP2.找出访问排名前10的URL3.找出10点到14点之间访问频次最高的IP和URL4....

  • Nginx Log日志统计分析常用命令

    IP相关统计 统计IP访问量(独立ip访问数量) 查看某一时间段的IP访问量(4-5点) 查看访问最频繁的前100...

网友评论

      本文标题:屏蔽访问URL频繁的IP

      本文链接:https://www.haomeiwen.com/subject/lzuovktx.html