防火墙如何使用状态检查

防火墙防护使用状态检查来跟踪当前连接。状态检查用于跟踪源及目标 IP 地址、端口、应用程序以及其他连接信息。客户端检查防火墙规则之前,会先根据连接信息决定通信流。
例如,如果某个防火墙规则允许计算机连接到 Web 服务器,则防火墙将记录该连接信息。当服务器回复时,防火墙会发现期望 Web 服务器对计算机的响应。它会直接允许 Web 服务器通信流向发起通信的计算机,而不用检查规则库。在防火墙记录连接之前,规则必须允许初始的出站通信。
使用状态检查就不必再创建新规则。对于单向启动的通信,您无须创建允许双向通信的规则。单向发起的客户端通信包括 Telnet(端口 23)、HTTP(端口 80)及 HTTPS(端口 443)。客户端计算机会发起此出站通信;您可以创建一条规则来允许这些协议的出站通信。状态检查会自动允许响应出站通信的返回通信。由于防火墙在本质上是状态式的,因此您只需创建发起连接的规则,而无需创建特定数据包的特性。所有属于允许的连接的数据包都明确允许为同一连接的完整部分。
状态检查支持定向 TCP 通信的所有规则。
状态检查不支持过滤 ICMP 通信的规则。对于 ICMP 通信,您必须创建允许双向通信的规则。例如,如果您希望客户端使用 ping 命令并接收回复,则必须创建允许双向 ICMP 通信的规则。
维护连接信息的状态表可能会定期清除。例如,处理防火墙策略更新时或 Symantec Endpoint Protection 服务重新启动时会清除状态表。