zoukankan      html  css  js  c++  java
  • Linux 针对nginx日志文件做ip防刷限制

    针对nginx日志做ip访问限制

    1.cat /var/log/server/nginx/access.log| awk -F '?' '/optionid/{print $1}'|awk '{print $1}' 获取含有optionid字符串行的行的ip

    2.sort -r| uniq -c |sort -nr |awk '$1>1000{print $2}' >/var/log/server/nginx/denyip.log对获取的ip排序,计算大于1000次写入到denyip.log文件中

    3.读取denyip.log文件中的ip地址,查看是否已经写入防火墙,没有的话添加iptables防火墙命令

     1 #! /bin/bash
     2 cat /var/log/server/nginx/www.test.com_access.log| awk -F '?' '/optionid/{print $1}'|awk '{print $1}'|sort -r| uniq -c |sort -nr |awk '$1>1000{print $2}' >/var/log/server/nginx/denyip.log
     3 for i in `cat /var/log/server/nginx/denyip.log|sort -nr|uniq -u`
     4 do
     5     NUM=`/etc/init.d/iptables status|grep -c $i`
     6     echo $NUM
     7     if [ $NUM -eq '0' ];then
     8         iptables -I INPUT -s "$i" -j DROP
     9     fi
    10 done
  • 相关阅读:
    stm8s103 EEPROM烧程序时能否保留
    NEC芯片特别说明
    pic中断特别说明
    删除排序链表中的重复元素 II
    被围绕的区域
    计数二进制子串
    简单工厂模式
    打家劫舍 II
    打家劫舍
    相同的树
  • 原文地址:https://www.cnblogs.com/GNblog/p/6934147.html
Copyright © 2011-2022 走看看