1.流程图

  FortiGate防火墙对数据包处理流程-LMLPHP  

2.防火墙对数据包处理过程的各步骤如下:

  1)Interface(网卡接口)

  网卡接口驱动负责接数收据包,并转交给下一过程。

  2)DoS Sensor(DoS防御,默认关闭)

  负责过滤SYN flood、UDP flood、ICMP flood等DoS攻击,并可针对源、目的IP的并发连接数进行限制。

  3)IP integrity header checking(IP头完整性校验)

  检查数据包头完整性。

  4)IPSec(IPSec VPN解密,默认关闭)

  如果是防火墙本身的IPSec VPN隧道中的数据包,将对其进行解密。

  5)DNAT(目标地址NAT)

  检查数据包中的目标IP地址,如果在 VIP(目标地址NAT)表中,则将其替换为映射后IP地址(真实IP地址)和端口。

  6)Routing(路由)

  本步骤根据数据包的目标IP地址确定该数据包的流出接口。

  7)Stateful Inspection Engine(状态检测引擎)

  状态检测引擎包含几个组件:

  a、Policy lookup(策略查找)

  在会话建立阶段,判断是否允许数据通过并建立会话状态,并根据UTM功能的开关决定数据包是否需要进入流检测引擎(Flow-based inspection engine)和代理检测引擎(Proxy-based inspection engine)。

  b、Session track(会话跟踪)

  维护会话表,跟踪会话状态、NAT和其它相关功能。会话建立之后的后续数据包不再进行策略匹配,直接根据会话状态转发。

  c、User authentication(用户认证,默认关闭)

  对用户身份进行认证,根据用户名和用户所在组选择防火墙策略。

  d、Management traffic(管理流量)

  与防火墙自身相关的流量处理,如Web、SSH管理,Syslog、SNMP通信等。

  e、SSL VPN流量(默认关闭)

  将SSL VPN流量解密,送至SSL VPN虚拟接口(通常为ssl.root),然后查找策略。

  f、Session helpers(即ALG)

  对FTP、SIP、Oracle等特殊应用进行处理,如动态开启策略、NAT,自动修改payload等,保证其正常通信。

  8)Flow-based inspection engine(流检测引擎,默认关闭)

  如果在防火墙策略中启用了防病毒、IPS、应用控制等流检测UTM功能,则会话后续数据包交由流检测引擎处理。

  9)Proxy-based inspection engine(代理检测引擎,默认关闭)

  如果在防火墙策略中启用了Web过滤、防病毒、反垃圾邮件、DLP等应用代理检测UTM功能,则会话后续数据包交由代理检测引擎处理。

  10)IPSec(IPSec VPN加密,默认关闭)

  如果会话匹配了IPSec VPN策略,此步骤将数据包加密封装

  11)Source NAT(源地址NAT)

  如果策略中启用了NAT,则将数据包的源IP地址和源端口替换为目标接口地址或IP池中的IP地址(通常为公网IP地址)。

  12)Routing(路由)

  最后一个路由步骤,确定数据包的流出接口,由路由引擎转发数据包。

  13)Egress(流出)

  由流出接口网卡将数据包发出防火墙。

  

  

  

  

  

  

  

  

  

  

  

  

  

05-11 19:46