科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道基于Linux系统的包过滤防火墙(13)

基于Linux系统的包过滤防火墙(13)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

包过滤防火墙是用一个软件查看所流经的数据包的包头(header),由此决定整个包的命运。它可能会决定丢弃(DROP)这个包,可能会接受(ACCEPT)这个包,也可能执行其它更复杂的动作。

作者:51CTO.COM 2007年11月9日

关键字: 包过滤 防火墙 iptables Linux

  • 评论
  • 分享微博
  • 分享邮件

  使用-limit-burst指定触发事件的阀值(默认是5),用来比对瞬间大量数据包的数量。

  #iptables -A INPUT -m limit-limit-burst 10

  上面的例子是用来比对一次同时涌入的封包是否超过10个,超过此上限的包将被直接丢弃。

  3)同时指定速率限制和触发阀值。

  #iptables -A INPUT -p icmp -m limit-limit 3/m-limit-burst 3

  假设均匀通过,平均每分钟3个,那么触发阀值burst保持为3个,如果每分钟通过的包的数目小于3,那么触发阀值burst将在每个周期(若每分钟允许通过3个,则周期数为20秒)后加1,但最大值为3。每分钟要通过的包的数量如果超过3,那么触发阀值burst将减掉超出的数值,例如第二分钟有4个包,那么触发阀值burst变成2,同时4个包都可以通过,第三分钟有6个包,则只能通过5个,触发阀值burst将变成0。之后,每分钟如果包数小于等于3,则触发阀值burst将加1,如果每分钟包数大于3,触发阀值burst将逐渐减小最终维持为0。

  即每分钟所允许的最大包数量为限制速率(本例为3)加上当前的触发阀值burst数。在任何情况下,都可以保证3个包通过,触发阀值burst相当于是允许额外的包数量。

  (4)基于状态的匹配扩展(连接跟踪)。

  每个网络连接包括以下信息:源地址、目的地址、源端口、目的湍口,称为套接字对(socket pairs);协议类型、连接状态(TCP协议)和超时时间等。防火墙把这些信息称为状态(stateful),能够检测每个连接状态的防火墙叫作状态包过滤防火墙。它除了能够完成简单包过滤防火墙的包过滤工作外,还在自己的内存中维护一个跟踪连接状态的表,比简单包过滤防火墙具有更大的安全性。 iptables与ipchains的不同之处在于iptables可以使用连接状态信息,创建基于包的状态的规则匹配。

  基于状态匹配创建规则的命令格式如下:

  iptables -m state-state [!]state [,state,state,state]

  其中,state表是一个用逗号分割的列表,用来指定的连接状态可以是如下的4种:

  →NEW:该包想要开始一个连接(重新连接或将连接重定向)。

  →RELATED:该包是属于某个已经建立连接所建立的新连接。例如:FTP的数据传输连接和控制连接之间就是RELATED关系。

  →ESTABLISHED:该包属于某个已经建立的连接。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章