在网上也看到过iptables黑白名单的脚本,拿下来都不符合,现在写了个自动黑白名单的脚本,已经在线上跑的了,有兴趣的朋友可以拿去试下。

脚本是相对简单的

1、因为crontab任务是按分来执行任务的,所以写一个每秒都执行任务的脚本,脚本如下,脚本名为“ipt.sh”

#!/bin/bash

SLEEPTIME=5

CONN=150

iptables_drop()

{

netstat -an| grep :80 | grep -v 127.0.0.1 |grep ESTABLISHED |awk '{ print $5 }' | sort|awk -F: '{print $1,$4}' | uniq -c | awk '$1>150 {print $1,$2}' > /root/black.txt

[ -z /root/black.txt ] && exit 0

for i in `awk '{print $2}' /root/black.txt`

do

for lm in `grep "\<$i\>" /root/black.txt | awk '{print $1}'`

do

two=`grep "\<$i\>" /root/bak.txt`

if [ "$i" != "$two" ]; then

[ $lm -gt $CONN ] && grep "\<$i\>" /root/work.txt > /dev/null

if [ $? -ne 0 ]; then

echo $i >> /root/bak.txt;

/sbin/iptables -I INPUT -p tcp -s $i --dport 80 -j DROP;

echo "/sbin/iptables -D INPUT -p tcp -s $i --dport 80 -j DROP" | at `date -d '+20 minutes' +%H:%M`  && \

echo "sed -i \"/\<$i\>/d\" /root/bak.txt" | at `date -d '+20 minutes' +%H:%M`

fi

fi

done

sleep 1

done

}

while true; do

iptables_drop

sleep $SLEEPTIME

done

详细:具体操作方法在/home/script下建立ipt.sh脚本,在/root目录下建个work.txt文件,里面写着白名单ip,这样这个白名单ip访问量再大也不会被X掉了,一般正常的访问量,单1秒的时间里同一个ip 过来的连接不会有超过150个的,所以判断1秒时间里web的连接数超过150个,直接用iptables拉黑,然后再用at任务在一定时间里将其还原,我这里设置为20分钟,基本上就是这样了......如那位朋友还有好的方案,可以拿出来一起分享,技术因为分享而快乐,呵呵

转载于:https://blog.51cto.com/1008305/752701

iptables防***自动黑白名单脚本相关推荐

  1. Android底层网络防火墙,详解Android 利用Iptables实现网络黑白名单(防火墙)

    一.概述 为了使读此简笔的人对Iptables有一个简单的了解,此处强行百度了一波概念,如果想深入的了解Iptables的各种配置规则和内核对其的管理运行机制请自行www.baidu.com,这些并不 ...

  2. iptables实现IP黑白名单功能

    概述: 在我们嵌入式设备,可能有时候为了安全会有黑白名单功能,黑名单模式:在黑名单的IP就不能访问我们的设备,白名单模式: 只有白名单的IP可以访问我们的设备,其他IP均不能访问我们设备.这里我们就是 ...

  3. linux防ddos攻击脚本,Linux IPTables防DDOS攻击Shell脚本

    1.Shell脚本 #!/bin/bash /bin/netstat -na |grep ESTABLISHED |awk '{print $5}' |awk -F : '{print $1}' | ...

  4. nginx lua 配置cc 防攻击-使用lua 配置黑白名单

    nginx lua 配置cc 防攻击-使用lua 配置黑白名单 cc 防攻击和ip 禁止期限 lua_shared_dict _dict 1m; lua_shared_dict _blacklist ...

  5. linux端口扫描脚本ip段,shell脚本结合iptables防端口扫描的实现

    网上有现在的防端口工具,如psad.portsentry,但觉得配置有点麻烦,且服务器不想再装一个额外的软件.所以自己就写了个shell脚本实现这个功能.基本思路是:使用iptables的recent ...

  6. linux防火墙黑白名单,iptables详解(9):iptables的黑白名单机制

    在本博客中,从理论到实践,系统的介绍了iptables,如果你想要从头开始了解iptables,可以查看iptables文章列表,直达链接如下 注意:在参照本文进行iptables实验时,请务必在个人 ...

  7. Iptables自动添加黑名单脚本

    IPtables自动添加黑名单脚本 1.脚本需求 登陆服务器日志/var/log/secure 检测检查日志中认证失败的行以及频繁发送请求的IP地址(失败条件可自行添加) 添加ip进iptables防 ...

  8. Android 自动拦截与自动接听功能APK黑白名单

    自动接听与挂断调用关系如下 1. 首先在启动apk初始界面的activity中,启动service服务,开始监听通话状态(InCallService) //启动通话状态监听服务private void ...

  9. [shell脚本] realtek平台 Mifi初始化时候,初始化wifi的黑白名单的sh脚本

    关于wifi的黑白名单,参考以前写的文章.有mtk和Realtek平台.具体参数参考芯片手册. https://blog.csdn.net/linbounconstraint/article/deta ...

最新文章

  1. CSDN:Markdown extra grammar
  2. MySQL入门篇(含数据库的备份)
  3. 让我们Core在一起:ASP.NET Core amp; .NET Core
  4. CompletableFuture详解~runAsync
  5. 控制器对应view生命周期
  6. 搭建大数据运行环境之一
  7. Qt之QFileSystemWatcher
  8. Broadcom fullmac WLAN 驱动解析(1)
  9. [Linux]局域网设置-远程登录GDMSETUP
  10. while 循环java_Java做while循环
  11. CenterOS 上 安装 Docker
  12. 软件工程——概要设计
  13. 中国居民身份证、通行证(含香港、澳门、台湾)资料整理,含编码规则
  14. fzyzojP3580 -- [校内训练-互测20180315]小基的高智商测试
  15. TML5期末大作业:咖啡网站设计——咖啡网站pc端带轮播js (5页) 学生酒水网页作业, 生鲜水果网页作业成品, 零食小吃网页作 美食网页业模板
  16. 微微一笑很倾城 从网红浅看CRM发展趋势
  17. 小程序中 使用FLY框架请求接口封装
  18. iPad pro能运行c语言吗,办公实战 iPad Pro还是洗洗睡吧_平板电脑评测-中关村在线...
  19. html图片快速轮播特效代码,轻松实现javascript图片轮播特效
  20. 便利店的选址有什么诀窍吗?需要掌握哪些选址技巧?

热门文章

  1. python图像插值
  2. css sprint 生成工具 bg2css
  3. 程序员保值的5个秘密
  4. UML建模之业务处理模型(Business Process Model,BPM)
  5. PEOPEO飘飘人项目总监胡实:项目经理进阶指南
  6. 力扣(LeetCode)78
  7. 代表中国为世界做出探索,杭州城市大脑获IDC亚太区智慧城市大奖
  8. python 9.13作业
  9. 治标更治本,如何从根源防护DDoS***
  10. 干式双离合和湿式双离合的优缺点