防火墙工作原理和详解会话表

防火墙工作原理
防火墙工作原理:
本质上是查看会话表。

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

如果有会话表匹配,则匹配会话表转发。
如果没有匹配会话表,看是否能够创建会话表。
前提是必须是首包才能创建会话表。

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报文

什么情况需要关闭状态检测:
(场景)来回路径不一致的情况 (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项参数。

协议,指明会话的协议

VPN,在虚拟防火墙中使用

ID,标志唯一的会话

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

TTL,会话的老化时间。

Left:会话剩余时间

output-interface:出接口

nextHop:下一跳

MAC:mac地址,

MAC地址为全0的情况:

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

正向流量统计

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

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

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

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

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

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

端口号为0的情况:

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

PolicyName:匹配的策略名称

老化时间(TTL)的问题:
各协议会话默认老化时间:
协议老化时间    协议
20s    icmp
30s    dns
120s 2min    qq/tftp/l2tp/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

什么情况会话表会老化:
老化时间到了
检测到有病毒的时候,会话表立刻老化,并且加入黑名单
发送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

会话时间存在的问题:
下载过大的FTP文件,会出现中断。
访问数据库,操作的时间大于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
配置长回话步骤:

配置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

调用ACL

interzone trust dmz long-link 3000 inbound
————————————————
版权声明:本文为CSDN博主「曹世宏的博客」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_38265137/article/details/88548511

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值