今天笔者在逛51cto技术博客的时候,无意间看到了一篇关于使用脚本自动封停IP防止ddos的文章,由于这篇文章实用性很强,并且在网络上没有类似的文章,所以笔者就转了过来分享给打下,本文是针对在linux下通过自动封IP来放置ddos攻击的,有需要的朋友赶紧拿去吧!

DDoS deflate 工作原理

每分钟检测一次IP连接状况,当某些IP连接超过配置脚本限制的连接数,程序会自动禁止这些IP一段时间,以达到防御攻击的目的

Installation 安装wget http://www.inetbase.com/scripts/ddos/install.shchmod 0700 install.sh./install.shUninstallation 卸载wget http://www.inetbase.com/scripts/ddos/uninstall.ddoschmod 0700 uninstall.ddos./uninstall.ddos

检查是否遭到ddos攻击命令netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

DDoS deflate的默认配置位于/usr/local/ddos/ddos.conf ,内容如下:##### Paths of the script and other filesPROGDIR="/usr/local/ddos"PROG="/usr/local/ddos/ddos.sh"IGNORE_IP_LIST="/usr/local/ddos/ignore.ip.list" //IP地址白名单CRON="/etc/cron.d/ddos.cron" //定时执行程序APF="/etc/apf/apf"IPT="/sbin/iptables"##### frequency in minutes for running the script##### Caution: Every time this setting is changed, run the script with --cron#####option so that the new frequency takes effectFREQ=1 //检查时间间隔,默认1分钟##### How many connections define a bad IP? Indicate that below.NO_OF_CONNECTIONS=150 //最大连接数,超过这个数IP就会被屏蔽,一般默认即可##### APF_BAN=1 (Make sure your APF version is atleast 0.96)##### APF_BAN=0 (Uses iptables for banning ips instead of APF)APF_BAN=1 //使用APF还是iptables。推荐使用iptables,将APF_BAN的值改为0即可。##### KILL=0 (Bad IPs are'nt banned, good for interactive execution of script)##### KILL=1 (Recommended setting)KILL=1 //是否屏蔽IP,默认即可##### An email is sent to the following address when an IP is banned.##### Blank would suppress sending of mailsEMAIL_TO="root" //当IP被屏蔽时给指定邮箱发送邮件,推荐使用,换成自己的邮箱即可##### Number of seconds the banned ip should remain in blacklist.BAN_PERIOD=600 //禁用IP时间,默认600秒,可根据情况调整

试用了一会,感觉还不错,比我以前用的分析nginx日志封IP的脚本要好些,假如几个虚拟主机使用不同的网站日志,就必须运行几个分析日志的脚本,这个脚本就用一个就可以把整个服务器保护起来了。但这个也存在一些问题,刚开始的时候把mysql服务器给封掉了,搞的我手忙脚乱的解封,然后把mysql服务器IP添加白名单,谁知过会他过了段时间又把白名单删除了,又给mysql服务器封了,不得以卸载了一次。

研究了一下代码才发现,他禁止的IP也添加到白名单里,然后解封的时候通过tmp目录里的unban.xxxxx文件将白名单里禁止的IP再删除,这样这个IP就不再受保护。所以我把mysql服务器IP添加白名单之后程序根据这个BAN_PERIOD=600参数在10分钟后删除,所以就出现了你恢复他继续封的怪圈,白名单设置文件应该和禁止解禁这个IP记录文件分开就好了。

使用心得:

安装后第一时间要将白名单设置好,最好观察一段时间看是不是正常,以免一些和服务器需要保持连接的IP被封,比如mysql服务器,rsync备份服务器等等,这些机器往往都需要和网站服务器保持大量连接

文末注意:

1、假如采用CDN加速不适于用这脚本,cdn节点缓存服务器的IP百分百会被该脚本封掉。

2、dz论坛的云平台IP也会跟服务器建立不少连接,还需要多监测,看是不是会误封。

linux搭建ddos发包机脚本_分享一个linux下自动封IP防御DDOS的脚本-网络教程与技术 -亦是美网络...相关推荐

  1. mysql connector安装教程_通过安装MySQL Connector/Net实现VS2017 C#编程连接MySQL数据库-网络教程与技术 -亦是美网络...

    对编程有一定了解的小伙伴都知道,一般情况下使用微软的visual studio进行编程开发都会搭配自家的SQL server.Access数据库,而开发web程序一般情况下PHP搭配MySQL使用,但 ...

  2. vmware efi linux,图文详解在vmware11虚拟机上安装以EFI启动模式的win 10 technical preview系统-网络教程与技术 -亦是美网络...

    微软发布win10技术预览版后,很多同学都想尝试win10带来的新体验和新功能,但又苦于win10目前还是测试预览版本,在稳定性.兼容性方面还有待改进,即使我们愿意去当微软的小白鼠,但也不能用测试评估 ...

  3. ddos发包机原理_简单的DDOS发包学习思路大家可以在去写

    WSAStartup (合并整数 (2, 2), WSAData) timeout = 2000 icmpBuffer = 取重复文本 (100, "ICMP-ICMP") m_h ...

  4. 用python爬小说_今天分享一个用Python来爬取小说的小脚本!(附源码)

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章天气预报数据分析与统计之美 ,作者:❦大头雪糕❦ Python GUI制作小说下载器教学讲 ...

  5. python爬取天气预报数据并保存为txt格式_今天分享一个用Python来爬取小说的小脚本!(附源码)...

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章天气预报数据分析与统计之美 ,作者:❦大头雪糕❦ Python GUI制作小说下载器教学讲 ...

  6. linux 终端 朗读,使Linux终端朗读文字的小技巧分享,linux终端

    使Linux终端朗读文字的小技巧分享,linux终端这篇文章主要介绍了使Linux终端朗读文字的小技巧分享,主要依赖espeak这个软件,需要的朋友可以参考下 对于那些不能文字朗读的设备,有个小工具可 ...

  7. java语言就业方向_四大就业方向彻底解决你学习Java语言编程的后顾之忧-生活感悟与随笔 -亦是美网络...

    前面的文章中已经给大家介绍了关于Java编程语言的优势.特点以及就业前景等内容,大家之所以这么热衷于Java编程学习,不仅是因为Java是编程市场上最为广泛流行的语言,大家更关心的是学习了Java编程 ...

  8. 100g的攻击大概是多少钱一天?高防IP防御DDOS的原理是什么?

    最近很多的小伙伴在问这个问题, 今天小蚁君本着公平公正的态度来回答这个问题 首先今年是2022年,目前攻击值已经达到了t级别以上,1t=1024g,100g相当于1t的大约十分之一,那么如果100g的 ...

  9. vc++6.0获取磁盘基本信息_分享一个实用脚本--一键获取linux内存、cpu、磁盘IO等信息...

    概述 今天主要分享一个shell脚本,用来获取linux系统CPU.内存.磁盘IO等信息. 脚本 #!/bin/bash # 获取要监控的本地服务器IP地址 IP=`ifconfig | grep i ...

  10. centos7系统引导自动重启_分享一个实用的脚本——全自动一键批量性安装Linux系统...

    一.背景说明: 公司最近需要上线几套业务系统,采购了11台HP服务器,服务器有厂家的工程师协助上架,可是系统人家不给安装,只能我们自己去安装吧. 想一想,机房那个环境呀~真冷!所以坚决不能一台一台去手 ...

最新文章

  1. 新工作总结之权限系统设计
  2. Java基础:由JVM内存模型详解线程安全
  3. 正则表达式--密码复杂度验证--必须包含大写、小写、数字、特殊字符中的至少三项
  4. java testwhileidle_DBCP踩坑(二):连接池检查testWhileIdle失效
  5. iOS-数据持久化-第三方框架FMDB的使用
  6. 庖丁解牛ASP.NET3.5控件和组件开发技术-(1)服务器控件概述
  7. github里的默认域_恕我直言!你对Python里的import一无所知
  8. linux 查看系统进程命令
  9. 化身阿凡达,国外小哥开源 AI 实时变脸工具 Avatarify
  10. 在QtCreator中手动添加signal和slot
  11. 看了这份《算法中文手册》笔记,就再也不怕字节了~
  12. CodeForces - 808B Average Sleep Time
  13. poweramp最完美设置_powerAMP音效设置
  14. 火影推荐程序连载6-径向模糊简介
  15. 一个简单的BitTorrent客户端实现(五):tracker manager和tracker实现
  16. 实验(1)信号的采样
  17. SQL Server 2005 SP3正式版下载
  18. Windows系统怎么使用TeamViewer打印
  19. OPEN.V.xx.N
  20. KEBA机器人控制器简介

热门文章

  1. wps怎么免费导出简历_WPS表格办公—一键添加简历模板
  2. 原子结构示意图全部_原子结构示意图知识点总结
  3. 计算机会不会取代人类英语作文,人类不能被机器人取代英语作文
  4. 面试官揭秘世界500强面试题
  5. 浅谈,盘点历史上有哪些著名的电脑病毒,80%的人都不知道!
  6. 【WP影视主题】电影下载网站WordPress主题模板源码——电影下载网站模板
  7. CSDN-markdown编辑器使用教程存档
  8. 专门感染word文件的计算机病毒是什么,计算机病毒分类及详细介绍.doc
  9. 使用FlashCS6制作cocos2d-x动作脚本的思路整理
  10. 无盘服务器易乐游,网维大师、易乐游无盘万兆性能评测