zoukankan      html  css  js  c++  java
  • Linux 内核防火墙的工作原理二

    包过滤

      每个钩子函数都可以对数据包进行处理,最基本的操作为对数据包进行过滤,系统管理员可以通过

    iptable工具来向内核模块注册多个过滤规则,并且指明过滤规则的优先权,设置完以后每个钩子按照规则

    进行匹配,如果与规则匹配,函数就会进行一些过滤操作,这些操作主要如下:

        NF_ACCEPT:继续正常地传递包

        NF_DROP:丢弃包,停止传送

        NF_STOLEN:已经接管了包,不要继续传送

        NF_QUEUE:排列包

        NF_REPEAT:再次使用该钩子

    包选择

      在netfilter框架上已经创建了一个包选择系统,这个包选择工具默认已经注册了3个表,分别是过滤表(filter)、

    网络地址转换表(NAT)和mangle表

      在调用钩子函数时是按照表的顺序来调用,例如在执行NF_IP_PRE_ROUTING时,首先检查filter表,然后

    检查Mangle表,最后检查NAT表,

      过滤表(filter)过滤包而不会改变包,仅仅是过滤的作用,实际上由网络过滤框架来提供NF_IP_FORWARD钩子

    的输出和输入接口使得很多过滤工作变得非常简单,从图中可以看出,NF_IP_lLOCAL_IN和NF_IP_LOCAL_OUT

    也可以做过滤,但是只是针对本机,

      网络地址转换表(NAT)分别服务于两套不同的网络过滤挂钩的包,对于非本地包,NF_IP_PRE_ROUTING和

    NF_IP_POST_ROUTING可以挂钩可以完美地解决源地址和目的地址的变更

      NAT表与filter表的区别在于只有新建连接的第1个包会在表中传送,结果将被用于以后所有来自这一连接的包,

    例如某一个连接的第1个数据包在这个表中被替换了源地址,那么以后这条连接的所有包都将被替换源地址

      mangle表被用于真正的改变包的信息,mangle表和所胡的5个网络过滤的钩子函数都有关

  • 相关阅读:
    Web 服务编程,REST 与 SOAP
    ODI调用WebService---->OdiInvokeWebService
    Using Custom Java code in ODI
    ODI---->Variables
    Oracle---->Join
    SQLserver中用convert函数转换日期格式
    ORA-00942 表或视图不存在
    GoldenGate 12c + Oracle 12c Multitenant Container databases
    goldengate 12c 针对oracle 12c配置的主要变化
    GoldenGate 配置extract,replicat进程自启动
  • 原文地址:https://www.cnblogs.com/myworld5218/p/9779243.html
Copyright © 2011-2022 走看看