科技行者

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

知识库

知识库 安全导航

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

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

  • 扫一扫
    分享文章到微信

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

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

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

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

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

  Netfilter/iptables IP信息包过滤系统是一种功能强大的工具,可用于添加、编辑和除去规则,这些规则是在做包过滤决定时所遵循的依据。这些规则存储在专用的信息包过滤表中,而这些表集成在Linux内核中。在信息包过滤表中,规则被分组在链(chain)中。

  (1)用户使用iptables命令在用户空间设置过滤规则。通过使用用户空间可以构建用户自己的定制过滤规则,这些规则存储在内核空间的信息包过滤表中。这些规则具有目标,它们告诉内核对来自某些源、前往某些目的地或具有某些协议类型的信息包做些什么。如果某个信息包与规则匹配,那么使用目标 ACCEPT允许该信息包通过。还可以使用目标DROP或REJECT来阻塞并杀死信息包。对于可对信息包执行的其它操作,还有许多其它目标。

  根据规则所处理的信息包的类型,可以将规则分组在链中。

  →处理入站信息包的规则被添加到INPUT链中。

  →处理出站信息包的规则被添加到OUTPUT链中。

  →处理正在转发的信息包的规则被添加到FORWARD链中。

  这3个链是系统默认的表(filter)中内置的3个默认主链。每个链都有一个策略,它定义默认目标,也就是要执行的默认操作,当信息包与链中的任何规则都不匹配时,执行此操作。

  (2)内核空间接管过滤工作。当规则建立并将链放在filter表之后, 就可以开始进行真正的信息包过滤工作了。这时内核空间从用户空间接管工作。

  包过滤工作要经过如下的步骤:

  1)路由。当信息包到达防火墙时,内核先检查信息包的头信息,尤其是信息包的目的地。我们将这个过程称为路由。

  2)根据情况将数据包送往包过滤表(filter)的不同的链。

  →如果信息包源自外界并且数据包的目的地址是本机,而且防火墙是打开的,那么内核将它传递到内核空间信息包过滤表的INPUT链。

  →如果信息包源自系统本机,并且此信息包要前往另一个系统,那么信息包被传递到OUTPUT链。

  →信息包源自广域网前往局域网或相反方向的信息包被传递到FORWARD链。

  3)规则检查。将信息包的头信息与它所传递到的链中的每条规则进行比较,看它是否与某条规则完全匹配。

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

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

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