【shell脚本】实现DDOS攻击自动封禁IP

news/2025/2/22 13:19:37/文章来源:https://www.cnblogs.com/o-O-oO/p/18719277

需求:

请根据web日志或者或者网络连接数,监控当某个IP并发连接数或者短时内PV达到100,即调用防火墙命令封掉对应的IP。

防火墙命令为:

iptables-I INPUT -s IP地址 -j DROP

脚本实现:

#!/bin/bash
#############################################################
# File Name: ddos_check.sh
#############################################################Info_File=/tmp/ddos_check.log#从连接数获取
#netstat -lant|awk -F "[ :]+" '/180:80/{clsn[$6]++}END{for(pol in clsn)print pol,clsn[pol]}' >$Info_File# 从日志获取
awk '{hotel[$1]++}END{for(pol in hotel)print pol,hotel[pol]}' access.log|sort -nk2 -r >$Info_Filewhile read line 
do Ip_Add=`echo $line |awk '{print $1}'`Access=`echo $line |awk '{print $2}'`if [ $Access -ge 10000 ]then#echo $Ip_Addiptables -I INPUT -s $Ip_Add -j DROPfi
done <$Info_File

原创 爱踢人生sre

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/885354.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ollama国内下载慢的问题

梯子挂好, 走代理 🙂 vim ~/.zshrc# 添加 # proxy v2 export http_proxy="http://127.0.0.1:10809" export ftp_proxy="http://127.0.0.1:10809" export https_proxy="http://127.0.0.1:10809" export all_proxy="http://127.0.0.1:1080…

日语

1.want to do sth 想做某事 I want to go to school. 我想去上学。want sb to do sth 想让某人做某事 I want my son to go to school.我想让我的儿子去上学。be different from 与......不同 The weather in Beijing is different from that of Nanjing.北京的天气和南京的不同…

02 内联 new delete

内联 函数调用流程: 程序执行顺序转移到函数所存放的内存中某个地址,将函数的程序内容执行完后,再返回到调用函数前的地方。要达到这样的目的必须在转去前,保护现场并存储执行的地址,转回后先恢复现场,并按照原存储地址继续执行。因此,函数调用有一定的时间和空间方面的…

08_基本数据类型介绍(测试发布文章)

08_基本数据类型介绍输入(问题):基本数据类型介绍?正例:输出(答案):知识描述:Java 数据类型分为两大类:基本数据类型(primitive data type)和引用数据类型(reference data type)。注意事项:引用数据类型的大小统一为 4 个字节,记录的是其引用对象的地址! 本章…

【CodeForces训练记录】Codeforces Round 1005 (Div. 2)

训练情况赛后反思 D题应该可以开出来的,看出了异或的性质,不等式可以移项,感觉是后缀异或+二分 A题 自己手玩一下就发现了,遇到首位1需要全部后缀移动到下面,再把首位0移动到上面,这样重复,所以我们从第一次出现 1 开始记录答案,操作次数为 01 交界处数量 + 1,另外特判…

DeepSeek-R1-671B 大模型本地部署详细教程

DeepSeek-R1大模型具备深度思考和推理能力,在数学、代码、自然语言推理等任务上都有着极大的提升。一方面由于官方或第三方的在线服务或多或少存在不稳定的问题,另一方面考虑到数据安全和隐私问题,本地私有化部署DeepSeek开源大模型对个人或企业来说也是一种不错的选择。本文…

引爆知识革命!Easysearch 携手 DeepSeek 打造下一代智能问答系统

去年我们尝试过使用 Easysearch + 千问 2 大模型打造一个企业内部知识问答系统,今年又有更加给力的大模型出现了--DeepSeek,性能对标 OpenAI o1 正式版。而且 Easysearch 对比去年也有了不少进步,是时候让我们升级下问答系统了。 DeepSeek 2025 年 1 月 20 日,人工智能领域…

人体碘元素知识

碘(化学符号:I,原子序数:53),碘是一种深紫色的固体,在常温常压下呈片状晶体。它具有较强的挥发性,当受热时,固体碘会直接转变为紫色的气体.在水中,碘不溶解,但可以溶解于一些有机溶剂中,例如乙醇和二甲苯。碘具有氧化性,在一些反应中可以作为氧化剂,例如氧化亚硫酸…

2025-02-16-snipd-format-for-obsidian

[!NOTE] This is a very early version, if something help, I would maintain it.Repo Meta<center>via: <a href=https://www.youtube.com/watch?v=bB-VWtidB5E target=_blank class=external-link>https://www.youtube.com/watch?v=bB-VWtidB5E</a><…

ingress生产环境安装方法

[!NOTE] 下载的Nginx Controller helm chart版本必须跟当前k8s版本兼容 官方参考地址:https://github.com/kubernetes/ingress-nginx/Supported Versions tableSupported Ingress-NGINX version k8s supported version Alpine Version Nginx Version Helm Chart Version🔄 v…

JUC并发-4.wait和notify以及Atomic原理

大纲 1.wait()与notify()实现一个简易的内存队列 2.wait()与notify()的底层原理 3.分布式存储系统NameNode机制介绍 4.分布式存储系统的edits log机制介绍 5.分布式存储系统的NameNode实现 6.分布式存储系统的创建目录功能的实现 7.edits log的全局txid机制和双缓冲机制实现 8.…

ACM寒假集训第六次专题任务

ACM寒假集训第六次专题任务 一、最大子段和 题目:解题思路: 维护两个变量:b 表示以当前元素结尾的最大子数组和,ans 表示全局的最大子数组和。遍历数组时,对于每个元素,更新 b 为当前元素值或当前元素与前一个最大子数组和的和(取较大值),同时更新 ans 为全局最大值。…