抵御DDOS攻击,iptables限制TCP连接和频率

cc攻击一到就有点兵临城下的感觉,正确的设置防护规则可以做到临危不乱,这里给出一个iptables对ip进行连接频率和并发限制,限制单ip连接和频率的设置规则的介绍

#单个IP在60秒内只允许新建20个连接,这里假设web端口就是80,

iptables -I  INPUT -i eth1 -p tcp -m tcp –dport 80 -m state –state NEW -m recent –update –seconds 60 –hitcount 20 –name DEFAULT –rsource -j DROP

iptables -I  INPUT -i eth1 -p tcp -m tcp –dport 80 -m state –state NEW -m recent –set –name DEFAULT –rsource

#控制单个IP的最大并发连接数为20

iptables  -I INPUT -p tcp –dport 80 -m connlimit  –connlimit-above 20 -j REJECT  

#每个IP最多20个初始连接

iptables -I  INPUT -p tcp –syn -m connlimit –connlimit-above 20 -j DROP

参数解释:

-p协议  

-m module_name:

-m tcp 的意思是使用 tcp 扩展模块的功能 (tcp扩展模块提供了 –dport, –tcp-flags, –sync等功能)

recent模块:

–name #设定列表名称,默认DEFAULT。

–rsource #源地址,此为默认。

–rdest #目的地址

–seconds #指定时间内

–hitcount #命中次数

–set #将地址添加进列表,并更新信息,包含地址加入的时间戳。

–rcheck #检查地址是否在列表,以第一个匹配开始计算时间。

–update #和rcheck类似,以最后一个匹配计算时间。

–remove #在列表里删除相应地址,后跟列表名称及地址

connlimit功能:

connlimit模块允许你限制每个客户端IP的并发连接数,即每个IP同时连接到一个服务器个数。

connlimit模块主要可以限制内网用户的网络使用,对服务器而言则可以限制每个IP发起的连接数。

–connlimit-above n    #限制为多少个

–connlimit-mask n     #这组主机的掩码,默认是connlimit-mask 32 ,即每个IP.

原创文章,作者:eryang,如若转载,请注明出处:http://www.178linux.com/15694

(3)
eryangeryang
上一篇 2016-05-07
下一篇 2016-05-09

相关推荐

  • IP地址的三种表示格式及在Socket编程中的应用

       使用TCP/IP协议进行网络应用开发的朋友首先要面对的就是对IP地址信息的处理。IP地址其实有三种不同的表示格式:        1)Ascii(网络点分字符串)-        2) 网络地址(32位无符号整形,网络字节序,大头) &nbsp…

    Linux干货 2015-04-10
  • keepalived实现高可用LVS

    前言 vrrp介绍:  vrrp(Virtual Router Redundancy Protocol)虚拟路由冗余协议;就是把多个路由器或多个网关设备加入到组中,然后在这一组中虚拟出一个路由器,此虚拟路由器有真是的IP和MAC地址,客户端将网关指向此虚拟路由器的IP;客户端向此虚拟路由器的IP和MAC地址发起请求时,由活动路由器负责响应;当活动路…

    Linux干货 2015-07-23
  • 一些鲜为人知的编程事实

    我的程序员经历让我明白了一些关于软件开发的事情。下面是一些在编程中可能会让人感到诧异的事情: 一个程序员用了大约只用了10%-20%的时间来编码,而且大多数程序员,无论他的水平如何,其平均每天只有10-12行的代码最终会进入最终的软件产品中。这是因为,优秀的程序员会花费90%的时间来思考、调查、研究最佳的设计。而糟糕的程序员则会花费90%的时间来调试代码,并…

    Linux干货 2016-07-11
  • HA专题: 使用pacemaker+corosync实现MySQL高可用

    HA专题: 使用pacemaker+corosync实现MySQL高可用 前言 实验拓扑 实验环境 实验步骤 准备工作 安装HA组件并配置 配置NFS 配置MySQL 配置HA资源 测试 总结 前言 上篇文章我们介绍了使用pacemkaer+corosync实现简单的nginx高可用, 这篇文章我们介绍如何使用pacemaker+corosync实现MySQ…

    Linux干货 2016-04-11
  • 用户 组 和权限 以及权限的 分类

    关于文件的安全我们要从3A验证 说起     1  Authentication:认证      2  Authorization:授权      3  Accouting|Audition:审计 由于系统文件的用户太多为了便于管理 我们便把系统的用…

    系统运维 2016-08-04
  • 关于文件查找和解压缩

                     文件查找和解压缩在文件系统上查找符合条件的文件,文件查找的工具有两个,locate 和find文件查找分为:          &nbs…

    系统运维 2016-08-18

评论列表(1条)