下一代防火墙介绍
2009年Gartner对下一代防火墙进行了定义,明确下一代防火墙应具备的功能特性。Gartner把NGFW看做不同信任级别的网络之间的一个线速(wire-speed)实时防护设备,能够对流量执行深度检测,并阻断攻击。Gartner认为,NGFW必须具备以下能力:
一、防火墙的默认区域
防火墙有4个默认的安全区域。
Local:防火墙上Local 区域,代表防火墙本身。比如防火墙主动发起的报文(在防火墙执行ping测试)以及抵达防火墙自身的报文(telnet、ssh、http、https)。
Trust:Trust为受信任的区域,一般会把防火墙连接内网的接口划分到trust区域。
DMZ:Dmz为非军事化区域。一般把连接到数据中心的接口划分到dmz区域。这个区域的信任程度优于untrust,次于trust。因为服务器是内部的设备认为是可信的,可是服务器又会有让外网用户访问的需求,所以把dmz区域定义为中等信任的区域。
Untrust:Untrust为不受信任的区域,由于Internet非常不安全,所以一般把连接Internet的接口划分到untrust区域。
二、防火墙安全级别
在防火墙上,每个安全区域都有一个唯一的安全级别,用1~100的数字表示,数字越大,则代表该区域内的网络越可信。对于默认的安全区域,它们的安全级别是固定的:Local区域的安全级别是100,Trust区域的安全级别是85,DMZ区域的安全级别是50,Untrust区域的安全级别是5。
防火墙每个安全区域都会有一个优先级,默认安全区域优先级从高到低为:local>trust>dmz>untrust
防火墙除了以上4个默认的安全区域之外,用户还可以根据自己的需求自行创建安全区域,创建的安全区域需要设置安全区域优先级,优先级不可以和已有的安全区域优先级相同。
三、报文转发流程
防火墙接收到一个数据包,会根据下面的流程进行处理:
报文从某个接口接收到或者准备从这个接口发送出去的时候,检查这个接口是否加入了安全区域,如果这个接口并没有加入任何的安全区域,那么直接把该报文丢弃;如果该接口已经加入了安全区域,解析报文的目的IP地址在防火墙的路由表是否可以查询到对应的出接口,如果查询不到也是直接丢弃;路由可达则查询防火墙的会话表,会话表有匹配的条目那么可以直接根据会话表进行转发,不需要匹配安全策略;会话表没有,那么就需要匹配安全策略!
四、安全策略匹配机制
报文匹配安全策略,先检查这个报文是否符合第一条安全策略的条件,如果符合就按照安全策略定义的规则动作执行,动作有permit和deny,也就是允许转发和不允许转发。如果第一条安全策略没有命中,那么继续匹配其他的安全策略。如果匹配完所有的安全策略都没有命中,那么将执行默认的安全策略动作(deny)。在配置安全策略的时候简历把精细的策略写到前面,非精细的策略放到后面,否则可能会先命中粗略的策略,进而报文匹配不到精细的策略,无法实现精细的策略控制。
五、防火墙会话表
会话是状态检测防火墙的基础,每一个通过防火墙的数据流都会在防火墙上建立一个会话表项,以五元组(源/目的IP地址、源/目的端口、协议号)为Key值,通过建立动态的会话表提供域间转发数据流更高的安全性。
会话表包括五个元素:
六、会话表与状态检测
防火墙状态检测使用基于连接状态的检测机制,将通信双方之间交互的属于同一连接的所有报文都作为整体的数据流来对待。当防火墙安全策略允许报文通过时,将会建立会话表项,会话建立后主机访问目标资源的回复数据包直接匹配会话表项不需要匹配策略规则。当使用状态检测防火墙时,报文成功被防火墙转发后,设备会生成一个五元组的会话表。
一个完整的会话表包含以下信息: