网关自动防御病毒系统的制作方法

文档序号:14843410发布日期:2018-06-30 14:28阅读:234来源:国知局
网关自动防御病毒系统的制作方法

本发明涉及网络安全技术领域,尤其涉及一种网关自动防御病毒系统。



背景技术:

随着网络技术与网络安全技术的不断发展,传统的安全网关功能已经不能满足日益出现的各种新需求。传统的安全网关只在网络层做集中访问控制,对应用层的安全无能为力,新一代的安全网关需要对应用层的安全也进行集中控制,以实现网络从二层到七层的立体安全控制。在新兴的应用层安全功能中,防病毒功能有着非常重要的地位,安全网关需要对经过安全网关的FTP,HTTP,POP3,SMTP,IMAP等流量进行实时病毒扫描,对比文件中的内容和防病毒库中存储的特征码,并对含有病毒的文件进行相关处理,如果传输的文件是某种压缩格式的文件,则病毒扫描模块需要将文件进行压缩,扫描其中所有的文件,以实现全面的杀毒功能。安全网关杀毒是CPU密集型动作,如果数据流量较大,防病毒模块会占用比较多的处理器时间和内存,将不可避免的对整个系统的其他功能产生一定的影响,降低系统的使用效能。

为了提高安全网关杀毒的能力,一般通过将需要进行病毒扫描的流量通过一定的方式分配到不同的安全网关集群设备上,以此来提高整个系统的吞吐率。目前主要有两种实现方法:

第一种方法,通过在安全网关集群上进行多个工作组的划分,也达到负载均衡的效果,不同的杀毒流量被强行的发送到集群中的不同工作组,集群中的每一个工作组在接收到流量后都会进行处理,从而实现杀毒流量的静态负载均衡。采用静态负载均衡方式进行组网,安全网关集群对外表现为多个逻辑设备,上下游设备必须进行复杂的配置。同时流量不能根据安全网关集群中的每个设备的状态进行负载均衡,只能按照定义好的策略进行流量发送。同时集群中的安全网关设备对于接收到的流量不能进行选择性的处理,只要上下游设备发送过来就必须处理。

第二种方法,通过在网络中添加专用负载均衡设备,可以达到动态的负载均衡效果。利用专用设备的高层协议识别与流量动态均衡能力,可以根据流量以及安全网关集群设备的状态来实现杀毒流量的动态负载均衡。基于专用负载均衡设备的动态负载均衡方案缺点也很明显,一般的专用负载均衡设备非常昂贵,同时如果要排除网络中的单点故障,必须以双机热备的模式进行网络搭建,导致在扩大了投入的同时浪费了负载均衡备份安全网关以及安全网关集群备份安全网关的系统资源。



技术实现要素:

鉴于上述的分析,本发明旨在提供一种网关自动防御病毒系统,用以解决现有技术中存在的通过将需要进行病毒扫描的流量通过一定的方式分配到不同的安全网关集群设备上所带来的诸多问题。

本发明的目的主要是通过以下技术方案实现的:

本发明提供了一种实现安全网关集群防病毒的方法,包括:

安全网关集群预先在多个安全网关设备中选举其中一个作为主安全网关,其他作为备份安全网关;

所述主安全网关对接收到的数据流进行识别,识别出需要进行杀毒的数据流,并且通过查询集群状态数据库和采用预定负载均衡策略将需要进行杀毒的数据流发送到其选定的备份安全网关上;

所述选定的备份安全网关将接收到的需要进行杀毒的数据流进行杀毒处理,并将经过杀毒处理的数据流封装成数据包后发送给所述主安全网关;

所述主安全网关在接收到所述选定的备份安全网关发送的经杀毒处理的数据包后,对所述数据包进行解封装,然后按正常处理流程对所述数据包进行转发。

进一步地,所述安全网关集群预先在多个安全网关设备中选举其中一个作为主安全网关,其他作为备份安全网关的步骤具体包括:

所述安全网关集群根据设定的安全网关设备优先级选举其中一个作为主安全网关,其他作为备份安全网关;并且所述安全网关集群还用于对安全网关设备的每一个监控接口进行权值设定,在优先级一致时,根据不同的接口权值进行选择主安全网关。

进一步地,所述方法还包括:当所述安全网关集群检测到当前主安全网关发生异常情况不能正常工作后,根据优先级算法在所有备份安全网关中重新选取一个作为主安全网关,并进行主安全网关的迁移处理。

进一步地,所述主安全网关对接收到的数据流进行识别,识别出需要进行杀毒的数据流,并且根据预定负载均衡策略将需要进行杀毒的数据流发送到其选定的备份安全网关上的步骤具体包括:

所述主安全网关对接收到的数据流进行安全规则匹配,对需要进行杀毒处理的数据流及其连接表进行标记;然后根据预定负载均衡策略将需要进行杀毒的数据流发送到其选定的备份安全网关上进行杀毒处理;其中,所述安全规则中包含对数据流中符合TCP/IP协议的IP报文的五元组属性要求;所述预定负载均衡策略为:轮询算法、权重轮询算法或者动态轮询算法。

进一步地,所述方法还包括:所述主安全网关实时监控安全网关集群的所有备份安全网关的状态,当确定有某个备份安全网关失效时,对该备份安全网关进行屏蔽,并将该备份安全网关的工作转移到集群中的其他设备。

本发明还提供了一种实现安全网关集群防病毒的系统,包括:多个安全网关设备组成的安全网关集群,其中,

所述安全网关集群,用于预先在多个安全网关设备中选举其中一个作为主安全网关,其他作为备份安全网关;

所述主安全网关,用于对接收到的数据流进行识别,识别出需要进行杀毒的数据流,并且根据预定负载均衡策略将需要进行杀毒的数据流发送到其选定的备份安全网关上;并且所述主安全网关还用于在接收到所述选定的备份安全网关发送的经杀毒处理的数据包后,对数据包进行解封装,然后按正常处理流程对所述数据包进行转发;

所述备份安全网关,用于将接收到的需要进行杀毒的数据流进行杀毒处理,并将经过杀毒处理的数据流封装成数据包后发送给所述主安全网关进行转发。

进一步地,所述安全网关集群具体用于,根据设定的安全网关设备优先级选举其中一个作为主安全网关,其他作为备份安全网关;并且所述安全网关集群还用于对安全网关设备的每一个监控接口进行权值设定,在优先级一致时,根据不同的接口权值进行选择主安全网关。

进一步地,所述安全网关集群还用于,当检测到当前主安全网关发生异常情况不能正常工作后,根据优先级算法在所有备份安全网关中重新选取一个作为主安全网关,并进行主安全网关的迁移处理。

进一步地,所述主安全网关具体包括:流量检测模块和负载均衡模块,其中,

所述流量检测模块,用于对接收到的数据流进行安全规则匹配,对需要进行杀毒处理的数据流及其连接表进行标记;所述安全规则中包含对数据流中符合TCP/IP协议的IP报文的五元组属性要求;

所述负载均衡模块,用于根据预定负载均衡策略将需要进行杀毒的数据流发送到其选定的备份安全网关上进行杀毒处理;所述预定负载均衡策略为:轮询算法、权重轮询算法或者动态轮询算法。

进一步地,所述主安全网关还用于,实时监控安全网关集群的所有备份安全网关的状态,当确定有某个备份安全网关失效时,根据负载均衡策略将该备份安全网关上的数据流发送到其他备份安全网关上。

本发明有益效果如下:

本发明通过安全网关集群主设备对需要病毒扫描的流量在安全网关集群间进行动态负载均衡,实现集群内负载均衡功能。同时当集群中的一台设备出现故障后,流量会自动的在集群的剩余设备间进行重新分配,当安全网关集群的主设备出现故障后,集群可以自动进行新的主设备选举,并接管集群负载均衡功能,实现了安全网关集群的透明性与高性能的统一,在保持安全网关集群高可用性的基础上,通过有效的动态负载均衡机制,提升了安全网关集群的整体资源利用率。同时安全网关集群具有很好的伸缩性和扩展性,可在不改变网络拓扑的条件下,通过简单增加新的安全网关来提升安全网关杀毒的吞吐率。

本发明的其他特征和优点将在随后的说明书中阐述,并且从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

图1为本发明所述方法的流程示意图;

图2为本发明所述方法实例中的一个安全网关集群的拓扑结构示意图;

图3为本发明所述系统的结构示意图。

具体实施方式

下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理。为了清楚和简化目的,当其可能使本发明的主题模糊不清时,将省略本文所描述的器件中已知功能和结构的详细具体说明。

首先结合附图1对本发明所述方法进行详细说明。

如图1所示,图1为本发明所述方法的流程示意图,具体可以包括如下步骤:

步骤101:安全网关集群预先在多个安全网关设备中选举其中一个作为主安全网关,其他作为备份安全网关;具体的说就是,由于要实现病毒扫描(AV)流量在安全网关集群内进行负载均衡功能,并且支持安全网关集群透明接入上下游网络环境,安全网关集群必须在内部选举出一个主安全网关负责与上下游网络环境进行流量的交互处理,其他的做为备份安全网关只与主安全网关通信,与上下游环境保持透明关系;

其中,选举过程具体包括:安全网关集群根据设定的设备优先级选择主安全网关与备份安全网关,优先级高的为主安全网关,其余为备份安全网关。同时可以对安全网关的每一个监控接口进行权值设定,权值越大代表这个接口的可用性越高,在设备优先级一致的情况下,安全网关集群可以根据不同的接口权值进行主安全网关的选举;

步骤102:主安全网关对接收到的数据流进行识别,识别出需要进行杀毒的数据流,并且根据预定负载均衡策略将需要进行杀毒的数据流发送到其选定的备份安全网关上;具体的说就是,在数据包进入主安全网关后首先进行安全规则匹配,安全规则中包含对数据包中符合TCP/IP协议的IP报文的五元组属性要求,同时安全规则中还包含有需要对数据包进行的杀毒策略。数据包在匹配了一条安全规则后则不再继续进行其他安全规则的匹配,相匹配的安全策略会对需要进行防病毒处理的数据流及其连接表进行标记;然后通过查询集群状态数据库以及动态负载均衡策略确定数据包被发送到集群中的哪个备份安全网关上,通过安全网关集群专用的心跳接口将数据包封装,发送到相应的备份安全网关;安全网关集群状态数据库数据记录了整个集群的状态信息,状态信息包含集群中每个成员设备的CPU利用率,内存利用率,连接数大小,接口状态信息,设备优先级信息,病毒库信息等。在连接表被标记后,所有匹配这条连接的后续报文都会被主安全网关发送到相同的备份安全网关进行处理,在进行流量负载均衡的同时,保证同一个流之间的数据包被指派到同一个备份安全网关上,保证服务和数据的一致性;

步骤103:备份安全网关将接收到的需要进行杀毒的数据流进行杀毒处理,并将经过杀毒处理的数据流封装成数据包后发送给主安全网关;具体的说就是,备份安全网关接收到心跳口传送过来的数据包后,对数据包进行解封装后进行病毒扫描处理,并将病毒扫描(AV)后的流量进行重新封装后通过备份安全网关的心跳口将流量发送回主安全网关;

步骤104:主安全网关接收到备份安全网关发送的经杀毒处理的数据包后,对数据包进行解封装,然后按正常处理流程对数据包进行转发。

本发明所述方法还包括:

当安全网关集群检测到主安全网关发生异常情况不能正常工作后(设备硬件故障,监控接口故障,监控软件故障),会根据优先级算法在安全网关集群设备间进行主安全网关的迁移工作;主安全网关迁移后,新的主安全网关接管整个安全网关集群对外的所有功能,同时根据安全网关集群状态数据库负责对接收的流量进行负载均衡的工作。

并且,主安全网关实时监控集群中其他设备状态,当有备份安全网关失效后可以实时调整负载均衡策略,对该备份安全网关进行屏蔽,并将该备份安全网关的工作转移到集群中的其他设备;具体的说就是,一旦主安全网关检测到集群中有失效的备份安全网关,会立即将其屏蔽,并通知安全网关集群中的其他设备更新本地的安全网关集群状态数据库,使其不再参与集群的运算和负载均衡,并将工作转移到集群中的其他设备;并且如果主安全网关检测到集群中的一台设备暂时无法工作,则再检测两次,除非全都失败才认为该设备失效,从而保证不会因为单台安全网关设备暂时忙而对其进行错误屏蔽,导致中断正常连接从而降低整个安全网关集群的效率。

安全网关集群中的其他备份节点除了处理主安全网关分配的流量外,也会和其他设备进行内部状态检测,通过监控主安全网关的运行状况,确保集群中的每一个设备都有一个统一的安全网关集群状态数据库,可以在主安全网关失效时立刻进行新的主安全网关选举,避免主安全网关单点故障。

在本发明中,安全网关集群负载均衡策略可以为RR(Round Robin,轮询)算法、WRR(Weight Round Robin,权重轮询)算法或者DRR(Dynamic RoundRobin,动态轮询)算法,具体说明如下:

RR算法:最简单也最容易实现的一种方法。在整个安全网关集群中,每个安全网关节点都具有相同的地位,算法在安全网关集群中的每一个节点循环轮转选择,集群中的每个节点都在相同的地位下被轮流选择。这种方法的优点是简单,减少集群系统之间的的通信,节约系统资源,适用于集群中所有节点处理能力和性能都相同的情况。

WRR算法:在轮询算法的基础上加入了权重的概念,可以为集群中的每一个设备添加一个权重值,当系统执行轮询算法的时候可以根据不同的权重值判断集群中节点的不同地位,从而分配相应的流量。可以根据不同设备不同的处理能力设定不同的权值,处理能力高的设备可以被分配到更多的流量。

DRR算法:由于网络流量分布式与安全网关设备工作状态的不确定性,静态均衡算法不能根据负载和设备本身的状态对流量进行调整,本质上不能保证真正的负载均衡,这时就要采用动态负载均衡的方案。整个安全网关集群的状态数据库会定期更新,当主安全网关进行数据负载均衡的时候,会根据集群状态数据库动态调整负载均衡机制,当检测到了一个设备处理能力下降或是不能正常工作后,会减少发向该设备的流量,将多余流量负载均衡到集群中的其他设备上。安全网关集群中的每一个设备都会建立一个统一的集群状态数据库。该数据库包含有安全网关集群中每一个设备的连接状态信息,接口状态信息,CPU状态信息,内存状态信息,设备权重信息等。每个集群设备的状态信息自动推送到安全网关集群中,集群中其他的设备在收到其他设备的状态信息后会实时更新自己的集群状态数据库信息。安全网关集群内的每一个节点组成互相监控相互备份的集群系统,实现集群内部数据的一致性。

安全网关集群状态数据库需要维护两张表,一张为发送者表,一张为接收者表,发送者表中数据表明对应安全网关集群节点负载大于其阈值需要迁移任务,接收者表中记录表明对应节点负载小于其阈值可以接受新的任务。每张表中的内容通过集群间的状态信息进行实时更新,确保安全网关集群中的主安全网关可以根据表中的实时信息进行流量的动态负载均衡。

动态轮询算法不再简单的遍历集群中的每一个设备或是根据静态的权重值进行负载的分配,会根据不同节点的工作状态动态调整到相应节点的流量,当一个节点处理能力下降后,会将流量动态的负载到其他可用设备上。

为了进一步理解本发明所述方法,下面将举个具体的实例进行说明。

如图2所示,图2为一个安全网关集群的拓扑结构示意图,包括:防火墙A、防火墙B、防火墙C和防火墙D组成一个安全网关集群,该集群通过SWITCH-1和SWITCH-2接入网络环境,集群对外表现为一台独立的逻辑设备,对外只有一个IP地址,网络中的其他设备不用关心集群内设备的个数以及组网情况。集群内的安全网关通过SWITCH-3将各自的心跳口进行连接,通过集群优先级算法选举出A为主安全网关,其他设备为备份安全网关。上下游设备发送到集群的流量都会被送到主安全网关A上,A安全网关对接收的流量进行分析识别,对需要病毒扫描(AV)的流量根据动态负载均衡策略通过专用接口发送到相应的备份安全网关。

下面结合附图3对本发明所述系统进行详细说明。

如图3所示,图3为本发明实施例所述系统的结构示意图,具体可以包括:包含多个安全网关的安全网关集群、主安全网关以及备份安全网关,为了能够进行主备设备间的无缝切换,需要在集群中的每一个安全网关都应该有相同的安全策略,病毒库以及连接表信息,这些信息在集群的工作过程中可以自动的在集群间进行同步,确保切换后对流量有一致的处理行为。

(一)安全网关集群,包括多个安全网关设备,对外表现为一个逻辑上独立的安全网关,主要负责在多个安全网关设备中选举其中一个作为主安全网关,其他作为备份安全网关;具体的说就是,由于要实现病毒扫描(AV)流量在安全网关集群内进行负载均衡功能,并且支持安全网关集群透明接入上下游网络环境,安全网关集群必须在内部选举出一个主安全网关负责与上下游网络环境进行流量的交互处理,其他的做为备份安全网关只与主安全网关通信,与上下游环境保持透明关系;其中,选举过程具体包括:安全网关集群根据设定的设备优先级选择主安全网关与备份安全网关,优先级高的为主安全网关,其余为备份安全网关。同时可以对安全网关的每一个监控接口进行权值设定,权值越大代表这个接口的可用性越高,在设备优先级一致的情况下,安全网关集群可以根据不同的接口权值进行主安全网关的选举;并且,当安全网关集群检测到主安全网关发生异常情况不能正常工作后(设备硬件故障,监控接口故障,监控软件故障),会根据优先级算法在安全网关集群设备间进行主安全网关的迁移工作;主安全网关迁移后,新的主安全网关接管整个安全网关集群对外的所有功能,同时根据安全网关集群状态数据库负责对接收的流量进行负载均衡的工作。

(二)主安全网关,用于主安全网关主要负责整个安全网关集群流量的负载均衡工作,并且作为经过安全网关集群流量的唯一出入口,所有由备份安全网关处理的流量最后还需要通过主安全网关进行发送;具体的说就是,对接收到的数据流进行识别,识别出需要进行杀毒的数据流,并且根据预定负载均衡策略将需要进行杀毒的数据流发送到其选定的备份安全网关上;并且在接收到备份安全网关发送的经杀毒处理的数据包后,对数据包进行解封装,然后按正常处理流程进行数据包的转发;

主安全网关具体可以包括:流量检测模块和负载均衡模块,其中,

流量检测模块,用于对接收到的数据流进行安全规则匹配,安全规则中包含对数据包中符合TCP/IP协议的IP报文的五元组属性要求,对需要进行防病毒处理的流量及其连接表进行标记;

负载均衡模块,用于通过查询集群状态数据库以及动态负载均衡策略确定数据包被发送到集群中的哪个备份安全网关上,通过安全网关集群专用的心跳接口将数据包封装,发送到相应的备份安全网关;所述预定负载均衡策略可以为:轮询算法、权重轮询算法或者动态轮询算法;

并且,主安全网关还要实时监控安全网关集群的所有备份安全网关的状态,当确定有某个备份安全网关失效时,对该备份安全网关进行屏蔽,并将该备份安全网关的工作转移到集群中的其他设备。

(三)备份安全网关,用于将接收到的需要进行杀毒的数据流进行杀毒处理,并将经过杀毒处理的数据流封装成数据包后发送给主安全网关进行转发;具体的说就是,备份安全网关接收到心跳口传送过来的数据包后,对数据包进行解封装后进行病毒扫描处理,并将病毒扫描(AV)后的流量进行重新封装后通过备份安全网关的心跳口将流量发送回主安全网关;同时,备份设备也必须监控整个集群的状态,以便在当前主安全网关失效、重新选举主安全网关后,新产生的主安全网关可以实时接管对整个集群的功能。

综上所述,本发明提供了一种网关自动防御病毒系统,安全网关集群对外表现为一个逻辑上独立的安全网关,在集群内部通过专有算法进行主安全网关选举,选举出来的主安全网关会对集群中的其他设备进行状态检查与关键信息同步等工作,集群中的其他设备为备份安全网关。除主安全网关外,集群中的备份安全网关也监控整个集群的状态信息,在检测到主安全网关失效后,可以自动进行新的主安全网关选举,由于之前备份安全网关也进行了整个集群的状态检测,在新选举的主安全网关上可以做到对需要病毒扫描(AV)流量的无缝负载均衡。主安全网关负责与外界环境进行通信,备份安全网关只负责处理主墙发送的流量,所有备份安全网关处理后的流量都通过专有通道由主安全网关进行重新转发,确保整个集群透明接入网络。

本发明实现了在安全网关集群内对病毒扫描(AV)流量的动态负载均衡,解决了安全网关集群静态负载均衡方式接入网络复杂,灵活性低以及在网络中使用专用负载均衡设备投入大,资源浪费等问题。新的系统模型有方案性价比高、易于实现、系统强健、安全性和可管理性强的优点。在现有的网络结构基础之上提供一种廉价,有效,透明的方法,来提升安全网关集群设备利用率和病毒扫描流量吞吐率。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1