携手创作,共同成长!这是我参与「日新计划 8 月更文挑战」的第9天,点击查看活动详情

Iptables防火墙的基本概念以及执行原理

1.1.什么是防火墙?

所谓“防火墙”是指一种将内部网和公众访问网(如Internet)分开的方法,它实际上是一种建立在现代通信网络技术和信息安全技术基础上的应用性安全技术,隔离技术。越来越多地应用于专用网络与公用网络的互联环境之中,尤其以接入Internet网络为最甚。

所谓的防火墙指的是一种手段,通过这种手段可以将暴露在公共环境下的物种,起到一定的保护机制。

在如今的互联网环境中,所有的服务、数据、信息都暴露在物联网中,如果没有这种隔离的手段,那么对于数据的安全有着非常大的隐患,因此就需要通过防火墙的这种隔离手段,设置一定的策略和动作,将能够访问目标端的来源地址放行,将恶意访问目标端的来源地址拒绝,从一定程度上保障数据的安全性。

1.2.防火墙的种类

防火墙的种类可以分为逻辑层和物理层。

  • 逻辑层:分为主机和网络的防火墙。

    • 最常见的是主机防火墙,针对单个主机进行防护,一般都是主机上安装的防火墙软件。
    • 网络防火墙,在整个网络环境入口的边缘处架设的防火墙,在网络入口处对进入的流量做一些安全策略。
  • 物理层:分为软件和硬件的防火墙。

    • 软件防火墙成本低,开源好用的软件防火墙种类很多,性能略低。
    • 硬件防火墙成本高、性能强。

1.3.Iptables防火墙基本概念

iptables防火墙是Linux平台下免费且稳定的防火墙软件,iptables防火墙是由两个组件组成,分别是netfilter和iptables。

iptables并不是实现防火墙功能的软件,而是一个中间代理程序,用户通过iptables软件写入的一些安全规则,最终是被netfilter包过滤型防火墙写入到了内核空间的安全框架中,实现防火墙功能的组件是netfilter。

iptables防火墙主要工作在网络层,也是典型的包过滤防火墙,实现客户端到目标端的安全策略,包过滤防火墙主要是过滤数据包中的header信息,拿到header信息后与设置好的防火墙规则进行比对,如果符合条件则放行,不满足条件则拒绝进入。

包过滤防火墙主要对目标IP、目标端口、协议类型做策略的匹配。

Iptables防火墙工作原理:

1.防火墙是层层过滤的,实际上当一个请求进到防火墙后,会按照配置的防火墙规则,从上到下顺序的进行匹配,从前到后进行过滤。

2.如果匹配上其中的某一条规则,明确表示是阻止或者是通过,数据包就不会再向下匹配新的规则。

3.如果规则中没有明确表明是阻止还是通过,也就是没有匹配到任何规则,那么数据包就会向下匹配,直到匹配到默认规则得到明确的阻止或者通过为止。

4.防火墙的默认规则只有当所有规则都匹配完后,没有合适的规则,才能去匹配默认规则。

netfilter是内核中的一部分,进入防火墙的各种报文都需要通过netfilter设置的一些关卡,所谓的关卡也就是链的概念,需要通过各种链设定的规则策略,才可以放行通过,否则就拒绝进入内网。