防火墙工作原理

防火墙工作原理

防火墙工作原理:

本质上是查看会话表。

报文到达防火墙,先查看是否会有会话表匹配。

  1. 如果有会话表匹配,则匹配会话表转发。
  2. 如果没有匹配会话表,看是否能够创建会话表。

前提是必须是首包才能创建会话表。

A.先匹配路由表。B.再匹配安全策略。

在这里插入图片描述

TCP: SYN ---------首包
​ SYN+ACK
​ ACK

ICMP echo-request----首包
​ echo-reply

UDP没有首包概念

状态检测机制:

  • 状态尖刺机制开启的情况下,只有首包通过设备才能建立会话表,后续包直接匹配会话表项进行转发。
  • 状态监测机制关闭的情况下,即使首包没有经过防火墙,后续包只要通过防火墙也可以生成会话表项。

开启命令:firewall session link-state check -------默认就开启

关闭状态检测的命令:undo firewall session link-state check tcp/icmp


首包建立会话-------使用状态检测。

状态检测主要针对TCP和ICMP报文

什么情况需要关闭状态检测:

  1. (场景)来回路径不一致的情况 (SACG)。

详解会话表

查看会话表:

查看会话简要信息

[FW1]display firewall session table  ---------------查看会话表简要信息
 Current Total Sessions : 5
  https  VPN:public --> public 192.168.0.100:49363-->192.168.0.10:8443
  协议    虚拟防火墙有作用         源地址:源端口 目标地址:目标端口
  https  VPN:public --> public 192.168.0.100:49350-->192.168.0.10:8443
  tcp  VPN:public --> public 10.1.1.1:49395-->192.168.1.100:17889
  ftp-data  VPN:public --> public 192.168.1.1:20-->10.1.1.1:49396
  ftp  VPN:public --> public 10.1.1.1:49393+->192.168.1.1:21

     
     
     
     
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

筛选会话:

[FW1]display firewall session table servic ftp ---------筛选会话
 Current Total Sessions : 1
  ftp  VPN:public --> public 10.1.1.1:49393+->192.168.1.1:21

     
     
     
     
  • 1
  • 2
  • 3

查看会话表详细信息:

[FW1]display firewall session table  verbose  --------------------查看会话详细信息

ftp/协议 VPN:public > public/虚拟防火墙有作用 ID: a58f362c468281b1855c0cfa4b /唯一的会话

Zone: trust> dmz/安全区域 TTL: 00:20:00/ 老化时间 Left: 00:19:02/剩余时间

Output-interface: GigabitEthernet0/0/2 /出接口 NextHop: 192.168.1.1/下一跳 MAC: 00-50-56-9e-ea-06/下一跳MAC
<packets:0 bytes:0/ 反向流量 >packets:24 bytes:1180/正向流量

10.1.1.1:49393+->192.168.1.1:21/源地址 源端口 目标地址 目标端口 PolicyName: trust_dmz /匹配策略

+-> -代表开启ASPF功能

> 无意义,正常报文

icmp VPN:public > public ID: a58f362c6bca01d8e15c0d2721
Zone: trust> dmz TTL: 00:00:20 Left: 00:00:19
Output-interface: GigabitEthernet0/0/2 NextHop: 192.168.1.1 MAC: 00-50-56-9e-ea-06
<packets:4 bytes:240 >packets:4 bytes:240
10.1.1.1:1>192.168.1.1:2048 PolicyName: trust_dmz

10.1.1.1 :1>192.168.1.1 :2048
源端口 目的端口

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

详细会话表中有 13项参数。

  1. 协议,指明会话的协议

  2. VPN,在虚拟防火墙中使用

  3. ID,标志唯一的会话

  4. ZONE(区域),指明流量的区域走向。

  5. TTL,会话的老化时间。

  6. Left:会话剩余时间

  7. output-interface:出接口

  8. nextHop:下一跳

  9. MAC:mac地址,

    MAC地址为全0的情况:

    1. 到达防火墙的接口
    2. 虚拟防火墙的MAC也是全0
    3. 当ARP请求失败的时候
  10. 反向流量统计

  11. 正向流量统计

  12. 五元组,源地址:源端口–>目的地址:目的端口

    注意:ICMP的端口计算方法:

    ICMP报文中的Identifier字段16进制转换为10进制,作为源端口

    将Type字段和Code字段的值做与运算,作为目的端口。

    例如:Type=8,Code =0;则目标端口=1000 0000 0000 & 0 = 2048

    ICMP带端口的原因:因为ICMP需要做状态检测,所有需要五元组。ICMP端口无实际意义。

    端口号为0的情况:

    当流量为OSPF,ESP,AH等协议时,端口为0.

  13. PolicyName:匹配的策略名称

老化时间(TTL)的问题:

各协议会话默认老化时间:

协议老化时间 协议
20s icmp
30s dns
120s 2min qq/tftp//udp/rip/ntp/snmp/syslog/h323
240s 4min ftp-data/GRE/AH
600s 10min SIP/HTTPS/ESP
1200s 20min HTTP/FTP/Telnet/SMTP/sqlnet/ssh/tcp/pop3/BGP
14400s 4hours sqlnet-data

总结:

TCP 20min SYN 5s SYN+ACK 5s ACK 20Min frist-fin 900s finrst 5s

UDP 2min

ICMP 20s

注意:在网管防火墙流量时,当web在线时,https老化10min,当关闭web时,显示https老化时间10s。

即:HTTPS(有流量)----10min(TTL)

HTTPS(无流量)-----10s

什么情况会话表会老化:

  1. 老化时间到了
  2. 检测到有病毒的时候,会话表立刻老化,并且加入黑名单
  3. 发送FIN,第一次收到(frist-fin),老化时间变为900s(默认),第二次收到fin(finrst ),老化时间变为10s。

老化时间的修改:

  • 知名协议修改老化时间[FW1]firewall session aging-time service-set http 2000·----注意单位是S

  • 非知名协议修改时间
    第一步:自定义协议
    ip service-set abc type object
    service 0 protocol 200
    firewall session aging-time service-set abc 200

会话时间存在的问题:

  1. 下载过大的FTP文件,会出现中断。
  2. 访问数据库,操作的时间大于TCP的老化时间。

解决方案:

长会话:默认老化时间168小时。 注意:只针对TCP。

长会话的默认会话时间可以修改。

[FW1]display firewall  long-link aging-time  
 Long-link aging-time is 168 hours
修改长会话的默认时间
firewall long-link  aging-time 20

   
   
   
   
  • 1
  • 2
  • 3
  • 4

配置长回话步骤:

  1. 配置ACL定义协议

    acl number 3000 rule 5 permit tcp source 10.1.1.0 0.0.0.255 destination 192.168.1.0 0.0.0.255 destination-port eq ftp

  2. 调用ACL

    interzone trust dmz long-link 3000 inbound

        

你可能感兴趣的:(网络知识,防火墙)