防火墙原理

防火墙

基本概念

防火墙是内部网络与外部网络之间的网络安全系统。是一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过。

在网络的世界里,要由防火墙过滤的就是承载通信数据的通信包。它实际上是一种隔离技术。防火墙是在两个网络通讯时执行的一种访问控制尺度,它能允许你“同意”的人和数据进入你的网络,同时将你“不同意”的人和数据拒之门外,最大限度地阻止网络中的黑客来访问你的网络。

防火墙作用是流量控制和安全防护,区分和隔离不同安全区域。

防火墙的转发流程比路由器复杂。以框式设备为例,硬件上除了接口、LPU(Line Processing Unit)、交换网板等外,防火墙还特有SPU(Service Processing Unit),用于实现防火墙的安全功能。

防火墙分类:包过滤防火墙、状态检测防火墙、AI防火墙。

包过滤是指基于五元组对每个数据包进行检测,根据配置的安全策略转发或丢弃数据包。 包过滤防火墙的基本原理是:通过配置访问控制列表(Access Control List,ACL)实施数据包的过滤。

包过滤防火墙主要基于数据包中的源/目的IP地址、源/目的端口号、IP 标识和报文传递的方向等信息。

数据不具有连贯性,容易被黑客仿造合法地址进行攻击。

状态检测是包过滤技术的发展,它考虑报文前后的关联性,检测的是连接状态而非单个报文。 状态检测防火墙就是支持状态检测功能的防火墙。

AI防火墙是结合AI技术的新一代防火墙。它通过结合AI算法或AI芯片等多种方式,进一步提高了防火墙的安全防护能力和性能。

防火墙技术不断的发展,从早期的包过滤防火墙发展到当前的AI防火墙。

安全区域:

防火墙通过把接口划分到某个区域实现区域间的隔离,一个区域内的用户具有相同的安全属性。防火墙大部分的安全策略都基于安全区域实施。

防火墙有四个默认安全区域:trust、untrust、local、dmz。他们的优先级分别为85,5,100,50

默认安全区域无法删除和修改安全优先级。   但用户可以自己创建并设置优先级(越大越优先)。

流量的源、目的地址决定了互访的区域。

安全策略:

安全策略是控制防火墙对流量转发以及对流量进行内容安全一体化检测的策略。

当防火墙收到流量后,对流量的属性(五元组、用户、时间段等)进行识别,然后与安全策略的条件进行匹配。如果条件匹配,则此流量被执行对应的动作。

安全策略的匹配过程:

当配置多条安全策略规则时,安全策略的匹配按照策略列表的顺序执行,即从策略列表顶端开始逐条向下匹配。如果流量匹配了某个安全策略,将不再进行下一个策略的匹配。 安全策略的配置顺序很重要,需要先配置条件精确的策略,再配置宽泛的策略。(否则可能出现本来要禁止的流量被上面的规则放行,所以要谨慎策略顺序,先把该禁止的禁止,再考虑放行的)

系统默认存在一条缺省安全策略default。缺省安全策略位于策略列表的最底部,优先级最低,所有匹配条件均为any,动作默认为禁止。如果所有配置的策略都未匹配,则将匹配缺省安全策略default。

会话表:

会话表是用来记录TCP、UDP、ICMP等协议连接状态的表项(基于状态检测),是防火墙转发报文的重要依据。

防火墙采用了基于“状态”的报文控制机制:只对首包或者少量报文进行检测就确定一条连接的状态,大量报文直接根据所属连接的状态进行控制。这种状态检测机制迅速提高了防火墙的检测和转发效率。会话表就是为了记录连接的状态而存在的。设备在转发TCP、UDP和ICMP报文时都需要查询会话表,来判断该报文所属的连接并采取相应的处理措施。(因此防火墙只配置单向策略就可以实现单向的通信或者阻塞,另一方无法主动访问)

如下是TCP和HTTP的状态检测举例:

会话表的创建和包处理过程:

会话表的老化时间与长连接:

防火墙为各种协议设定了会话老化机制。当一条会话在老化时间内没有被任何报文匹配,则会被从会话表中删除。这种机制可以避免防火墙的设备资源被大量无用、陈旧的会话表项消耗。

但是对于某些特殊业务中,一条会话的两个连续报文可能间隔时间很长。例如: 用户通过FTP下载大文件,需要间隔很长时间才会在控制通道继续发送控制报文。 用户需要查询数据库服务器上的数据,这些查询操作的时间间隔远大于TCP的会话老化时间。 此时如果其会话表项被删除,则该业务会中断。长连接(Long Link)机制可以给部分连接设定超长的老化时间,有效解决这个问题。

多通道协议在防火墙上的问题(FTP)

如果在防火墙上配置严格的单向安全策略,那么防火墙将只允许业务单方向发起访问。这会导致一些特殊的协议无法工作,例如FTP。

FTP主动模式传输文件时,首先需要客户端主动向服务器端发起控制连接,然后需要服务器端向客户端发起数据连接。如果设备上配置的安全策略仅允许客户端报文单方向通过,则FTP文件传输不能成功。通信过程中需占用两个或两个以上端口的协议被称为多通道协议。多通道协议都需要考虑此类问题

ASPF与Server-map:

是针对多通道协议所特定有的概念,ASPF开启后,会检测应用层数据,识别协议在应用层协商的地址和端口,ASPF也称作基于状态的报文过滤,ASPF功能可以自动检测某些报文的应用层信息并根据应用层信息放开相应的访问规则,即生成Server-map表。

Server-map表即简化的会话表,并且是针对应用层的表(防火墙配置了ASPF、NAT Server和No-PAT方式的源NAT时,都会生成相应的Server-map表项),记录了类似会话表中连接的状态,流量真实到达防火墙时,防火墙会基于Server-map表生成会话表,然后执行转发。

Server-map表与会话表的关系如下:

Server-map表记录了应用层数据中的关键信息,报文命中该表后,不再受安全策略的控制;

会话表是通信双方连接状态的具体体现;

Server-map表不是当前的连接信息,而是防火墙对当前连接分析后得到的即将到来报文的预测

防火墙收到报文先检查是否命中会话表;

如果没有命中则检查是否命中Server-map表;

命中Server-map表的报文不受安全策略控制;

防火墙最后为命中Server-map表的数据创建会话表。

防火墙上配置了ASPF功能后,会检测FTP控制连接中协商的数据连接端口信息,然后生成Server-map表项。Server-map表项包含了FTP控制通道中协商的数据通道的信息。防火墙为命中Server-map表的数据创建会话表。

基本配置:

创建接口/进入接口视图:int g 0/0/x

(接口视图)配置接口允许通过的协议:server-manage {http/icmp/https | ping | ssh | snmp | netconf | telnet | all } permit/deny 

(service-manage命令用来允许或拒绝管理员通过HTTP、HTTPS、Ping、SSH、SNMP、NETCONF以及Telnet访问设备。缺省情况下,接口开启了访问控制管理功能。仅有管理接口下 HTTP、HTTPS、Ping权限放开。非管理口所有权限都关闭。此时,即使配置了接口所在安全域允许访问local区域的安全策略,也不能通过该接口访问本地防火墙。)

创建安全区域:firewall zone name x

(安全区域视图)设置安全区域优先级: set priority x          (优先级取值范围为1~100,全局唯一,值越大优先级越高。系统默认的安全区域不能被删除,优先级也无法被重新配置或者删除。)

(安全区域视图)添加接口到安全区域: add int g 0/0/x         (安全区域在使用时需要与防火墙的特定接口相关联,即需要将接口加入到安全区域。该接口既可以是物理接口,也可以是逻辑接口。)

进入安全策略视图: security-policy

(安全策略视图)创建规则:rule name x

(安全策略规则视图)配置安全策略规则的源安全区域: source-zone x(区域名称)/any(允许所有)

(安全策略规则视图)配置安全策略规则的目的安全区域:destination-zone x(区域名称)/any(允许所有)

(安全策略规则视图)配置安全策略规则的源IP地址:source-address xxxx 反掩码

(安全策略规则视图)配置安全策略规则的目的IP地址:destination-address xxxx 反掩码

(安全策略规则视图)配置服务:service x/any    (service命令用来配置服务,例如service protocol命令用来在安全策略中直接引用TCP/UDP/SCTP端口或IP层协)

(安全策略规则视图)配置安全策略规则的动作:action permit/deny    (防火墙默认的动作为deny)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值