如何快速、准确的配置防火墙安全策略?

配置防火墙安全策略之前,在《防火墙基础——安全区域、安全策略》一文的基础上,还需要对状态检测和会话进行了解 。
目前的防火墙多是以状态检测技术为基础的,而状态检测技术是包过滤技术的改进(两者在《包过滤与状态检测防火墙的区别浅述》中有过简单的比较),状态检测是基于连接状态的检测机制——将属于通信双方同一个连接的所有交互报文作为一个数据流看待,对这个数据流进行检查时会考虑数据报文之间的联系 。
而这个连接状态则是用会话来体现——如果安全策略允许,状态检测防火墙会为通信双方同一个连接的第一个报文建立一个会话并暂存在会话表中,后继报文将会直接匹配该会话而进行转发,不再进行安全策略检查,示意如图1 。防火墙中的这个会话表就是快速、准确配置防火墙安全策略的关键 。

如何快速、准确的配置防火墙安全策略?

文章插图
图1
下面通过图2所示的拓扑进行模拟实验:
实验场景是:在某单位的出口防火墙FW2(USG5500)上配置安全策略:仅允许内网的特定计算机Client1(10.1.1.1)可以ping通和访问外网中的特定Web服务器(1.1.1.1) 。
如何快速、准确的配置防火墙安全策略?

文章插图
图2
一、配置防火墙的接口IP地址
[FW2]interface GigabitEthernet 0/0/0
[FW2-GigabitEthernet0/0/0]ip address 10.1.1.254 24
[FW2-GigabitEthernet0/0/0]interface GigabitEthernet 0/0/1
[FW2-GigabitEthernet0/0/1]ip address 1.1.1.254 24
[FW2-GigabitEthernet0/0/1]quit
二、将防火墙的接口加入安全区域
将连接内网的G0/0/0口加入trust区域,连接外网的G0/0/1口则加入untrust区域 。
[FW2]firewall zone trust
[FW2-zone-trust]add interface GigabitEthernet 0/0/0
[FW2-zone-trust]firewall zone untrust
[FW2-zone-untrust]add interface GigabitEthernet 0/0/1
[FW2-zone-untrust]quit
此时,因为防火墙缺省安全策略是禁止,所以内网的Client1还无法ping通和访问外网的Web服务器 。
三、将防火墙的缺省安全策略从禁止临时修改为允许
[FW2]firewall packet-filter default permit all
注:
  1. 此时防火墙将放行所有数据报文,因此为安全计,建议尽量在测试环境中调试好,再转移到生产环境中 。
  2. 此时,内网的Client1可以ping通和访问外网的Web服务器 。
四、查看防火墙会话表
(一) 用内网的Client1访问外网的Web服务器
操作如图3
如何快速、准确的配置防火墙安全策略?

文章插图
图3
注:
Web服务器返回的HTTP的状态是404,这应该是模拟器的原因,不影响实验效果 。
(二) 查看防火墙的会话表
[FW2]display firewall session table
显示如图4
如何快速、准确的配置防火墙安全策略?

文章插图
图4
可以看到内网的Client1访问外网的Web服务器时,防火墙为其建立的会话 。其中使用的协议:http;(Client1的)源IP地址:10.1.1.1,源端口:2050;(Web服务器的)目的IP地址:1.1.1.1,目的端口:80,IP地址和端口之间的“-->”代表的是Client1主动访问Web服务器——数据请求方向从安全区域trust 到 untrust 。这几个就是配置Client1访问web服务器所需安全策略的要素 。
注:
  1. 其中源端口是随机的,因此在配置安全策略时需要忽略 。
  2. 因为会话表中的会话有老化时间,超时后会自动删除,而在eNSP中访问Web需要传输的数据很少所需时间很少,为了能看到会话,可以先将命令输入后不敲回车键,接着用Client1访问web,然后及时切换回防火墙命令界面按回车键 。
  3. 不同协议/服务的会话默认具有不同的老化时间,可以手动调整这个时间,一般情况下默认就可以正常工作 。
(三) 用内网的Client1 ping 外网的Web服务器
操作如图5
如何快速、准确的配置防火墙安全策略?

文章插图
图5
可以看到ping发了10次测试包,均成功 。
(四) 再次查看防火墙的会话表
[FW2]display firewall session table
显示如图6
如何快速、准确的配置防火墙安全策略?

文章插图
图6
可以看到Client1 ping Web服务器时,防火墙也为其建立了会话 。其中使用的协议:icmp;(Client1的)源IP地址:10.1.1.1,源端口:256;(Web服务器的)目的IP地址:1.1.1.1,目的端口:2048,IP地址和端口之间的“-->”代表的是Client1 ping Web服务器 。这几个则是配置ping所需安全策略的要素 。


推荐阅读