admin 发表于 2026-9-4 03:07:11

防火墙会话表 server‑map 表区别讲解

在防火墙中,会话表(Session Table)和Server-map 表是两个关键的数据结构,分别用于不同的场景,以下是它们的区别和详细讲解:

1. 会话表(Session Table)
定义:
会话表记录了防火墙当前所有活动的网络连接(会话),每个会话包含源/目的IP、端口、协议类型、状态等信息。

作用:

[*]状态化检测:基于会话状态(如TCP的三次握手)决定是否允许数据包通过。
[*]加速转发:已建立的会话可直接匹配规则,无需重复检查安全策略。
[*]连接跟踪:防止非法连接(如半开放攻击)并支持NAT等功能的正确运作。


特点:

[*]动态性:会话随连接建立而创建,超时或关闭后自动删除。
[*]双向记录:通常记录双向流量(如TCP的SYN/ACK过程)。
[*]应用广泛:适用于所有需要状态化检测的场景(如TCP/UDP会话)。


示例:

[*]用户访问Web服务器时,防火墙会创建一条从用户到服务器的TCP 80端口的会话记录。




2. Server-map 表
定义:
Server-map 表是防火墙为非状态化或特殊协议(如FTP、SIP、DNS等)预先建立的映射规则,用于动态开放端口或处理多通道协议。

作用:

[*]动态端口映射:解决多通道协议(如FTP的被动模式)中数据连接端口不固定的问题。
[*]策略预配置:允许防火墙根据应用层信息动态调整安全策略。
[*]NAT支持:在NAT场景下,确保返回流量能正确匹配原始会话。


特点:

[*]静态或半静态:可能由管理员配置或防火墙自动生成(如FTP的PORT/PASV命令解析)。
[*]单向或双向:根据协议需求,可能只记录单向映射(如仅允许数据连接返回)。
[*]协议特定:主要针对需要动态端口协商的协议。


示例:

[*]FTP被动模式下,客户端发送PASV命令后,服务器返回随机端口。防火墙通过解析该命令,在Server-map表中动态添加一条规则,允许客户端访问该随机端口。




3. 核心区别
| 特性         | 会话表                     | Server-map 表               |
|------------------|-------------------------------|--------------------------------|
| 目的         | 跟踪活动连接状态               | 处理动态端口或多通道协议       |
| 触发方式   | 自动生成(基于连接建立)       | 配置或协议解析(如FTP命令)    |
| 生命周期   | 连接存在时有效,超时删除       | 可能长期存在或按需更新         |
| 协议依赖   | 适用于所有状态化协议(TCP等) | 特定协议(FTP、SIP、DNS等)    |
| 数据来源   | 实时流量分析                   | 应用层协议解析或管理员配置    |



4. 实际应用场景

[*]会话表:
[*]用户访问HTTP网站时,防火墙通过会话表验证后续数据包是否属于已建立的连接。
[*]防止SYN Flood攻击时,通过会话表状态检测异常连接。
[*]Server-map 表:
[*]FTP服务器使用被动模式时,防火墙动态开放临时端口。
[*]SIP协议中,防火墙根据SDP信息动态允许媒体流传输。




5. 总结

[*]会话表是防火墙的核心连接跟踪机制,确保合法流量通过。
[*]Server-map 表是特殊协议的辅助工具,解决动态端口或多通道通信问题。
[*]两者协同工作:会话表处理常规流量,Server-map表处理复杂协议场景,共同提升防火墙的灵活性和安全性。
页: [1]
查看完整版本: 防火墙会话表 server‑map 表区别讲解