美文网首页程序员
防火墙包过滤

防火墙包过滤

作者: 农民工Alan | 来源:发表于2016-12-01 18:28 被阅读42次

    防火墙包过滤

    Netfilter和Iptables组件负责过滤网络数据包的处理和网络地址转换(NAT)。过滤的标准和相关联的任何操作都存储在链中,达到的单独网络数据包必须一个链一个链的匹配。匹配的链存储在表中,你可以通过iptable命令改变这些表和规则集。

    Linux内核维护三个表,每个表对应数据包过滤器的一个特定类别的功能:
    1.filter
    本表保留了大部分的过滤规则,因为它在更严格的意义上实现了包过滤机制,它决定了数据包是否通过(接受)或丢弃(丢弃)
    2.nat
    此表定义了对数据包的源地址和目标地址的任何更改。使用这些功能,还可以实现伪装,这是NAT用于专用网络与互联网链接的一种特殊情况。
    3.mangle
    本表中所持有的规则,可以用来操作IP头(服务类型)中存储的值。

    这些表包含了多个预定义的链来匹配数据包:
    1.PREROUTING
    此链适用于传入的数据包
    2.INPUT
    此链适用于传入系统内部进程的数据包
    3.FORWARD
    此链适用于只通过系统路由的数据包
    4.OUTPUT
    此链次用于从系统本身发出的数据包
    5.POSTROUTING
    此链适用于所有传出的数据包

    图15.1"防火墙:包的可能路径"说明了网络数据包在给定系统上可能经过的路径。为了简单起见,图中列出了表作为链的一部分,但在现实中,这些链被表所持有。

    在最简单的所有可能的情况下,传入的数据包对于系统本身到达eth0接口。包是第一次到PREROUTING链的mangle表然后到PREROUTING链的NAT表。下一步,关于数据包的路由,确定数据包的实际目标是系统本身的一个进程。如果filter表中的规则是匹配的,通过INPUT链的mangle和filter表后,数据包最终达到它的目标。

    Figure 15.1. iptables: A Packet's Possible Paths

    iptables: A Packet's Possible Paths.png

    相关文章

      网友评论

        本文标题:防火墙包过滤

        本文链接:https://www.haomeiwen.com/subject/nzwxmttx.html