调用防火墙封掉DDOS发起者IP

发布时间:2020-07-03 21:32:22 作者:陈继松
来源:网络 阅读:729

[root@linux-node1 ~]# cat fw.sh
#!/bin/bash
cat /var/log/nginx/access.log|awk -F ":" '{print $1}'|sort|uniq -c|sort -rn|head -10|grep -v "127.0"|awk '{if ($2!=null && $1>4) {print $2}}'>/tmp/dropip
for i in $(cat /tmp/dropip)
do        
    /sbin/iptables -A INPUT -p tcp --dport 80 -s $i -j DROP        
    echo "$i kill at date">>/var/log/ddos
done


脚本注解:

先查看日志文件,awk过滤出第一列IP,并进行排序,去重,然后反向排序,过滤出IP最多的前10个,排除127.0这个IP,然后再过滤出第二列不为空且IP数量大于4个的ip,并打印IP输出到/tmp/dropip文件中。

循环文件/tmp/dropip

封掉/tmp/dropip里面的ip地址的80端口

将此次事件写入/var/log/ddos日志里面,并再次循环。


推荐阅读:
  1. Linux防火墙:iptables禁IP与解封IP常用命令
  2. DDos高防IP

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

ddos 火墙

上一篇:.Net使用SignalR实现消息推送功能预研及Demo

下一篇:算法学习笔记(一)

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》