linux中 iptables


定义: liunx系统中软件形式的防火墙   前言   防火墙
  • 定义
    • 防止别人恶意访问
  • 种类
    • 硬件防火墙
      • 自行百度
    • 软件防火墙
      • 软件形式的防火墙
        • iptables 
        • firewalld
    • 安全组
  • 包过滤防火墙
    • 定义:  过滤数据包的防火墙
      • 包:  在数据传输过程,并不是一次性传输完成的;而是将数据分成若干个数据块,一块块传输, 一块儿就是一包.
    • 如何实现
      • 通过系统安全框架(Netfilter;属iptables),过滤数据包
  • 更好理解
    • https://baike.baidu.com/item/netfilter/8916221?fr=aladdin#1_1
      iptables   概要   1原理(底层执行流程) 2 iptables软件防火墙有几道关卡,是什么,实际数据怎么走(分为两种数据传输模式: A电脑→B电脑; 以及A电脑 →C电脑→B电脑)
  • 每个关卡都处理或者检验什么?
      详细     1 原理(底层执行流程)    用户  --->  调用iptables  --->  ip_tables内核模块  --->  Netfilter(内核防火墙框架/系统安全框架) --->  过滤请求 HOOK含义:  将数据包勾到Netfilter框架中,然后 在Netfilter中对数据进行处理(处理方式:函数)     2 iptables软件防火墙有几道关卡,是什么,实际数据怎么走(分为两种数据传输模式: A电脑→B电脑; 以及A电脑 →C电脑→B电脑)
  • 有5道关卡(专业术语叫5链)
  • 数据走向-见下详细图
     2-1 简化图
  • 两台计算机之间
  2-2 iptables中netfilter "结构详细图解" 文字解读
  • PREROUTING: 主机外报文进入的位置
  • INPUT:报文进入本机用户空间的位置
  • OUTPUT:报文从本机用户空间出去的位置
  • POSTROUTING: 报文流出前的关卡
  • FOWARD:报文经过路由并且发觉不是本机决定转发但还不知道从哪个网卡出去
>>>各关卡作用表(表就是函数,以实现某些功能)
  1. PREROUTING      | mangle, nat(目标地址转换,把本机地址转换为真正的目标机地址,通常指响应报文)
  2. INPUT                  | filter, mangle
  3. OUTPUT               | filter, mangle, nat
  4. POSTROUTING    | mangle,nat(源地址转换,把原始地址转换为转发主机出口网卡地址)
  5. FOWARD             | filter, mangle
>>>各个表作用的关卡(表就是函数,以实现某些功能)
  1. filter:  负责做过滤功能呢            INPUT、OUTPUT、FORWARD
  2. nat:     网络地址转换                  PREROUTING、INPUT、OUTPUT、POSTROUTING
  3. mangle:     负责修改数据包内容          PREROUTING、INPUT、OUTPUT、POSTROUTING、FORWARD
  4. raw:     负责数据包跟踪                  PREROUTING、OUTPUT
  一台第电脑中数据走向(3中情况)   2-2a 数据进入某电脑   2-2b数据在某电脑中转     2-2c数据从某电脑离开