对需要转发的数据包,先获取报头信息,然后和设定的规则进行比较,根据比较的结果对数据包进行转发或丢弃。
实现包过滤的核心技术是访问控制列表。
包过滤能够通过报文的源MAC地址、目的MAC地址、源IP地址、目的IP地址、源端口号、目的端口号、上层协议等信息组合定义网络中的数据流,其中源IP地址、目的IP地址、源端口号、目的端口号、上层协议就是在状态检测防火墙中经常所提到的五无组,也是组成TCP/UDP连接非常重要的五个元素。
定义:
主要应用:
防火墙的基本作用是保护特定网络免受“不信任”的网络的攻击,但是同时还必须允许两个网络之间可以进行合法的通信。安全策略的作用就是对通过防火墙的数据流进行检验,符合安全策略的合法数据流才能通过防火墙。
通过防火墙安全策略可以控制内网访问外网的权限、控制内网不同安全级别的子网间的访问权限等。同时也能够对设备本身的访问进行控制,例如限制哪些IP地址可以通过Telnet和Web等方式登录设备,控制网管服务器、NTP服务器等与设备的互访等。
过程:
防护墙安全策略的作用:
根据定义的规则对经过防火墙的流量进行筛选,并根据关键字确定筛选出的流量如何进行下一步操作。
域间安全策略
域间安全策略用于控制域间流量的转发(此时称为转发策略),适用于接口加入不同安全区域的场景。域间安全策略按IP地址、时间段和服务(端口或协议类型)、用户等多种方式匹配流量,并对符合条件的流量进行包过滤控制(permit/deny)或高级的UTM应用层检测。域间安全策略也用于控制外界与设备本身的互访(此时称为本地策略),按IP地址、时间段和服务(端口或协议类型)等多种方式匹配流量,并对符合条件的流量进行包过滤控制(permit/deny),允许或拒绝与设备本身的互访。
域内安全策略
缺省情况下域内数据流动不受限制,如果需要进行安全检查可以应用域内安全策略。与域间安全策略一样可以按IP地址、时间段和服务(端口或协议类型)、用户等多种方式匹配流量,然后对流量进行安全检查。例如:市场部和财务部都属于内网所在的安全区域Trust,可以正常互访。但是财务部是企业重要数据所在的部门,需要防止内部员工对服务器、PC等的恶意攻击。所以在域内应用安全策略进行IPS检测,阻断恶意员工的非法访问。
接口包过滤
当接口未加入安全区域的情况下,通过接口包过滤控制接口接收和发送的IP报文,可以按IP地址、时间段和服务(端口或协议类型)等多种方式匹配流量并执行相应动作(permit/deny)。基于MAC地址的包过滤用来控制接口可以接收哪些以太网帧,可以按MAC地址、帧的协议类型和帧的优先级匹配流量并执行相应动作(permit/deny)。硬件包过滤是在特定的二层硬件接口卡上实现的,用来控制接口卡上的接口可以接收哪些流量。硬件包过滤直接通过硬件实现,所以过滤速度更快。
可以看出,对于已经存在会话表的报文的检测过程比没有会话表的报文要短很多。而通常情况下,通过对一条连接的首包进行检测并建立会话后,该条连接的绝大部分报文都不再需要重新检测。这就是状态检测防火墙的“状态检测机制”相对于包过滤防火墙的“逐包检测机制”的改进之处。这种改进使状态检测防火墙在检测和转发效率上有迅速提升。
对于TCP报文
对于UDP报文
对于ICMP报文
会话是状态检测防火墙的基础,每一个通过防火墙的数据流都会在防火墙上建立一个会话表项,以五元组(源目的IP地址、源目的端口、协议号)为Key值,通过建立动态的会话表提供域间转发数据流更高的安全性。
域间缺省包过滤
当数据流无法匹配域间安全策略时,会按照域间缺省包过滤规则来转发或丢弃该数据流的报文。
转发策略
转发策略是指控制哪些流量可以经过设备转发的域间安全策略,对域间(除Local域外)转发流量进行安全检查,例如控制哪些Trust域的内网用户可以访问Untrust域的Internet。
本地策略
本地策略是指与Local安全区域有关的域间安全策略,用于控制外界与设备本身的互访。
报文入站后,将首先匹配会话表,如果命中会话表,将进入后续包处理流程,刷新会话表时间,并直接根据会话表中的出接口,转发数据。
报文入站后,将首先匹配会话表,如果没有命中会话表,将进入首包包处理流程。依次进行黑名单检查,查找路由表,匹配域间安全策略,新建会话表,转发数据。
黑名单的实现原理就是:设备上建立一个黑名单表。对于接收到的报文的源IP地址存在于黑名单中,就将该报文予以丢弃。
黑名单分类:
静态黑名单
管理员可以通过命令行或Web方式手工逐个将IP地址添加到黑名单中。
动态黑名单
转发策略和缺省域间包过滤优先级
转发策略优先于缺省域间包过滤匹配。设备将首先查找域间的转发策略,如果没有找到匹配项将匹配缺省包过滤进行处理。
刷新会话表
刷新会话表主要是刷新会话表老化时间,老化时间决定会话在没有相应的报文匹配的情况下,何时被系统删除。
如上图,防火墙的Gi0/0/0口在Trust区域,Gi0/0/01在UNtrust区域,通过配置策略,使得内网中除了PC1:192.168.1.2可以访问服务器,其他主机都不能访问服务器。
FW配置文件:
[FW]dis current-configuration
23:45:46 2018/04/26
#
interface GigabitEthernet0/0/0
ip address 192.168.1.1 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 10.1.1.1 255.255.255.0
#
firewall zone local
set priority 100
#
firewall zone trust
set priority 85
add interface GigabitEthernet0/0/0
#
firewall zone untrust
set priority 5
add interface GigabitEthernet0/0/1
#
firewall zone dmz
set priority 50
#
//配置地址集
ip address-set ip_deny type object
address 1 192.168.1.3 0
address 2 192.168.1.4 0
#
sysname FW
#
firewall packet-filter default permit interzone local trust direction inbound
firewall packet-filter default permit interzone local trust direction outbound
firewall packet-filter default permit interzone local untrust direction outboun
d
firewall packet-filter default permit interzone local dmz direction outbound
#
#
firewall statistic system enable
//防火墙状态检测默认开启
#
//防火墙策略
policy interzone trust untrust inbound
policy 0
action permit
policy destination 192.168.1.2 0
policy 1
action permit
policy source 192.168.1.2 0
#
policy interzone trust untrust outbound
policy 0
action deny
policy source address-set ip_deny
policy 1
action permit
policy source 192.168.1.2 0
#
return
[外链图片转存失败(img-IQFcshom-1566700164525)(防火墙安全策略/策略.png)]
参考文档:华为HedEx文档