安全配置核查任务分配方法及装置与流程

文档序号:11291948阅读:313来源:国知局
安全配置核查任务分配方法及装置与流程

本发明涉及网络安全技术领域,尤其涉及一种安全配置核查任务分配方法及装置。



背景技术:

近年来随着企业网规模持续扩大,网元数量和种类呈现爆发式的增长趋势,在设备数量急剧增加的同时,企业网面临的安全问题也随之变得更加严峻。在众多的安全问题中,由于设备的配置不当导致的安全风险一直以来都是造成信息安全问题的主要原因之一。

为了积极应对设备安全配置方面的问题,国内外各安全厂商纷纷推出安全配置基线核查类系统或者工具,其中,企业级核查类系统可以支持同时对多台终端设备进行检查,具有自动化程度高的优势,因此其被广泛应用于企业网的安全配置核查中。图1为现有技术中的企业安全配置基线核查系统的部署架构示意图。如图1所示,该系统采用分布式部署方式,包括一台核心服务器10、多台通过交换机20与核心服务器10连接的采集服务器30、以及与采集服务器30连接的终端设备40。在上述系统的工作过程中,核心服务器10负责检查任务制定,以及,将制定好的任务下发到其中的一个采集服务器30或者均分到多个采集服务器30;然后,采集服务器30根据被分配到的检测任务登录相应的终端设备,以及按照检查任务中的检查项进行被检查设备(即终端设备40)的安全配置检查和检查结果分析;最后,各采集服务器30将检查结果发送给核心服务器10以进行检查结果集中汇总。另外,当核心服务器10分配检查任务时,核心服务器10会根据各采集服务器30上一次分配被分配任务的时间与本次任务之间的时间间隔进行任务分配调度。

然而,上述任务分配方式为任务为最小单位进行分配,并没有考虑检测任务所包含的被检查设备数量、检查项数量、检查项执行效率等因素,尤其当检查任务中设备数量过多时,将会导致检查任务执行耗时过长,任务耗时将达到数小时甚至数天;另外,上述任务分配方式仅从任务的创建时间维度进行任务分配调度,没有考虑采集服务器当前的负载等情况,所以当两个采集服务器的负载差距较大时,会造成一个采集服务器一直处于工作状态而另一个服务器有很长时间处于闲置状态,进而造成严重资源浪费,影响了核查系统的推广使用。



技术实现要素:

为克服相关技术中存在的问题,本发明提供一种安全配置核查任务分配方法及装置。

根据本发明实施例的第一方面,提供一种安全配置核查任务分配方法,该方法包括:

获取待执行任务中的被检查设备信息以及与所述被检查设备对应的检查项信息;

根据所述被检查设备信息、所述检查项信息、以及与所述检查项对应的检查项权重值,计算出所述待执行任务所包含的总任务量;

获取核查系统中各采集服务器的当前性能数据;

根据各所述采集服务器的当前性能数据以及所述待执行任务所包含的总任务量,将所述待执行任务进行拆分、以及将拆分得到的待执行子任务分配给相应的所述采集服务器。

可选地,获取待执行任务中的被检查设备信息以及与所述被检查设备对应的检查项信息之前,所述方法还包括:

获取待执行任务中的各待检查设备的ip地址;

根据各所述待检查设备的ip地址,分别向各所述待检查设备发送设备探测指令;

判断是否接收到所述待检查设备根据所述设备探测指令返回的设备存活信息;

如果接收到,则将返回所述设备存活信息的待检查设备判定为被检查设备。

可选地,获取核查系统中各采集服务器的当前性能数据,包括:

分别向核查系统中的各采集服务器发送服务器探测指令;

判断是否接收到所述采集服务器根据所述服务器探测指令返回的服务器存活信息;

如果接收到,则获取返回所述服务器存活信息的采集服务器的当前性能数据。

可选地,所述检查项权重值的设置方法包括:

获取核查系统中为每个类型的终端设备所建立的各检查项对应的执行时长;

根据各所述检查项对应的执行时长,设置各所述检查项的检查项权重值,其中,所述执行时长越长对应的所述检查项权重值越大。

可选地,根据各所述采集服务器的当前性能数据以及所述待执行任务所包含的总任务量,将所述待执行任务进行拆分,包括:

根据各所述采集服务器的当前性能数据以及所述待执行任务所包含的总任务量,计算出各所述采集服务器待分配的任务量;

根据各所述采集服务器待分配的任务量,将所述待执行任务拆分为与各所述采集服务器待分配的任务量相匹配的待执行任子任务。

可选地,根据各所述采集服务器待分配的任务量,将所述待执行任务拆分为与各所述采集服务器待分配的任务量相匹配的待执行任子任务,包括:

根据所述采集服务器待分配的任务量,从所述待执行任务选取同类被检查设备的检查项;

判断选取的所述同类被检查设备的检查项对应的任务量是否达到所述采集服务器待分配的任务量要求;

如果未达到,则继续从剩余的所述待执行任务中选取其它类被检查设备的检查项,将选取的所述同类被检查设备的检查项和所述其它类被检查设备的检查项作为所述采集服务器的待执行任子任务。

根据本发明实施例的第二方面,提供了一种安全配置核查任务分配装置,该装置包括:

任务信息获取模块:用于获取待执行任务中的被检查设备信息以及与所述被检查设备对应的检查项信息;

总任务量计算模块:用于根据所述被检查设备信息、所述检查项信息、以及与所述检查项对应的检查项权重值,计算出所述待执行任务所包含的总任务量;

性能数据获取模块:用于获取核查系统中各采集服务器的当前性能数据;

任务分配模块:用于根据各所述采集服务器的当前性能数据以及所述待执行任务所包含的总任务量,将所述待执行任务进行拆分、以及将拆分得到的待执行子任务分配给相应的所述采集服务器。

可选地,所述装置还包括:

设备地址获取模块:用于获取待执行任务中的各待检查设备的ip地址;

设备探测指令发送模块:用于根据各所述待检查设备的ip地址,分别向各所述待检查设备发送设备探测指令;

设备存活判断模块:用于判断是否接收到所述待检查设备根据所述设备探测指令返回的设备存活信息;

被检设备判定模块:用于如果接收到所述待检查设备根据所述设备探测指令返回的设备存活信息,则将返回所述设备存活信息的待检查设备判定为被检查设备。

可选地,所述性能数据获取模块包括:

服务器探测子模块:用于分别向核查系统中的各采集服务器发送服务器探测指令;

服务器存活判断子模块:用于判断是否接收到所述采集服务器根据所述服务器探测指令返回的服务器存活信息;

性能数据获取子模块:用于如果接收到所述采集服务器根据所述服务器探测指令返回的服务器存活信息,则获取返回所述服务器存活信息的采集服务器的当前性能数据。

可选地,所述任务分配模块包括:

服务器任务计算子模块:根据各所述采集服务器的当前性能数据以及所述待执行任务所包含的总任务量,计算出各所述采集服务器待分配的任务量;

任务拆分子模块:根据各所述采集服务器待分配的任务量,将所述待执行任务拆分为与各所述采集服务器待分配的任务量相匹配的待执行任子任务。

由以上技术方案可见,本发明实施例提供的安全配置核查任务分配方法及装置,根据待执行任务中被检查设备信息、被检查设备所涉及到的检查项信息、各检查项对应的权重值、以及采集服务器负载情况多个维度综合考量,将待执行任务以任务中的检查项作为最小细粒度进行拆分,并将拆分得到的待执行子任务分配给相应的所述采集服务器以进行任务统一调度。本发明实施例提供的任务分配方法,将任务细分为更小的调度单元,充分利用安全配置合基线检查系统中采集服务器的性能,有效的提升了任务的执行效率,解决了现有安全配置核查系统任务分配算法过于简单、任务执行效率低下等诸多问题,使安全配置基线核查系统具有更高的推广价值。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为现有技术中的企业安全配置基线核查系统的部署架构示意图;

图2为本发明实施例一提供的安全配置核查任务分配方法的流程示意图;

图3为本发明实施例二提供的安全配置核查任务分配方法的流程示意图;

图4为本发明实施例提供的一种安全配置核查任务分配装置的基本结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。

针对现有技术中的安全配置基线核查类方法,通常以任务为最小单位进行任务分配,而不考虑任务包含的设备数量、检查项数量、检查项执行时长、服务器负载情况等,任务分配调度功能死板,导致任务执行效率大大降低的问题,本发明实施例提供了新的安全配置核查任务分配方法,应用于安全配置和基线检查系统,该方法的主要原理是将任务细分为更小的调度单元,并结合其他多方面因素,将细分后的任务分配给核查系统中的各采集服务器,以提升任务执行效率。

图2为本发明实施例一提供的安全配置核查任务分配方法的流程示意图。如图2所示,该方法主要包括如下步骤:

s101:获取待执行任务中的被检查设备信息以及与所述被检查设备对应的检查项信息。

在安全配置核查系统中新建安全配置检查任务时,会经过选择被检查设备列表、确定安全配置核查任务的检查范围、获取被检查设备登录信息(如设备类型、ip地址、帐号名、密码),并为每个类型的被检查设备设定需执行的检查项列表、以及设定检查开始时间及周期等任务信息等一系列过程。

由于待执行任务中的总任务量与任务中的设备数量、需执行的检查项数量、检查项权重值等相关,因此,本发明实施例在核心服务器端建好安全配置检查任务后,会首先获取新建的待执行任务中的被检查设备信息,包括任务中的设备列表信息以及设备类型信息(如windows、redhat、oracle、cisco等),然后获取各被检查设备对应的检查项信息。

s102:根据所述被检查设备信息、所述检查项信息、以及与所述检查项对应的检查项权重值,计算出所述待执行任务所包含的总任务量。

由于安全配置核查系统为每个类型的设备均建立了若干个检查项,各检查项的执行效率不相同,因此,各检查项对应的检查项权重值也有不同。

针对各检查项对应的检查项权重值的设置方法,本发明实施例提供的如下步骤:首先,获取安全配置核查系统中为每个类型的终端设备所建立的各检查项对应的执行时长,在实际应用中,在设置各检查项对应的执行时长时,需要对所有设备类型下的所有检查项进行多次测试,统计各个检查项执行的平均消耗时长,然后将执行各检查项平均消耗的时长分别作为各检查项的执行时长;然后,根据各检查项对应的执行时长,设置各检查项的检查项权重值,其中,执行时长越长对应的检查项权重值越大。以windows主机和redhat主机的部分检查项为例,本发明实施例将各检查项的平均消耗时长设置为权重值,当然,并不限于该设置方法,如下表一:

表一:

本发明实施例提供了如下待执行任务所包含的总任务量的计算方法:

公式(1)中,各符号分别为:w检查项权重值,checkitems检查项,n某类型设备的数量,types待检查设备类型。

假设待执行任务中共有10台待检查设备,10台设备中5台为windows主机,另外5台为redhat主机;windows主机有7个待检查项需要进行检查,redhat主机也有7个检查项,如下表二:

表二:

按照公式(1)的计算方法,上表二中的总任务量则为1875。

s103:获取核查系统中各采集服务器的当前性能数据。

在本发明实施例中,采集服务器的当前性能数据,主要是其内存利用率信息。采集服务器通过心跳信号将自身的内存利用情况发送到核心服务器,核心服务器在为采集服务器分配任务量时,将参考各采集服务器的内存利用情况进行合理分配。当然,并不限于内存利用率,还可以获取采集服务器的配置等信息。

s104:根据各所述采集服务器的当前性能数据以及所述待执行任务所包含的总任务量,将所述待执行任务进行拆分、以及将拆分得到的待执行子任务分配给相应的所述采集服务器。

在进行待执行任务拆分时,首先,根据各所述采集服务器的当前性能数据以及所述待执行任务所包含的总任务量,计算出各所述采集服务器待分配的任务量;然后,根据各所述采集服务器待分配的任务量,将所述待执行任务拆分为与各所述采集服务器待分配的任务量相匹配的待执行任子任务。

以图1中的部署架构图为例,即部署三台采集服务器。内存利用上限为85%,由步骤s103获取到的采集服务器性能数据可知,三台采集服务器目前的内存利用情况如下表三所示:

表三:

在步骤s102中,计算得到的总任务量为1875,按照各采集服务器的内存利用情况为三台采集服务器分配任务量分别为:

采集服务器-1待分配的任务量=1875*25.6g/(25.6g+12g+22.4g)=800

采集服务器-2待分配的任务量=1875*12g/(25.6g+12g+22.4g)=375

采集服务器-3待分配的任务量=1875*22.4g/(25.6g+12g+22.4g)=700

进一步的,在完成各采集服务器的待分配任务量的计算后,根据各所述采集服务器待分配的任务量,以任务中的检查项为粒度为采集服务器分配任务。同时,在将所述待执行任务拆分为与各所述采集服务器待分配的任务量相匹配的待执行任子任务时,为减少并发连接数量,优先为同一台采集服务器分配同一被检查设备和同类型设备的检查项,具体包括如下步骤:

s141:根据所述采集服务器待分配的任务量,从所述待执行任务选取同类被检查设备的检查项。

依然以图1中的部署架构图为例,采集服务器-1待分配的任务量为800、采集服务器-2待分配的任务量为375、采集服务器-3待分配的任务量位700。在表二的任务中,一个redhat主机的7个检查项对应的任务量为168,对应的5个redhat主机所有的检查项的任务量为840,进一步的,一个windows主机的7个检查项对应的任务量为207,相对应的,对应的5个windows主机所有的检查项的任务量为1035。由于上述两类被检查设备的检查项的任务量都超出了三个采集服务器待分配的任务量,并且redhat主机的任务量最接近采集服务器-1待分配的任务量,因此,可以将前四个redhat主机的检查项以及第五个redhat主机的前六个检查项分配给采集服务器-1,将第五个redhat主机的最后一个检查项将分配给采集服务器-2。

s142:判断选取的所述同类被检查设备的检查项对应的任务量是否达到所述采集服务器待分配的任务量要求。

如果达到要求,则继续将剩余任务分配给系统中的其它采集服务器;如果未达到要求,则执行步骤s143。

s143:如果未达到,则继续从剩余的所述待执行任务中选取其它类被检查设备的检查项,将选取的所述同类被检查设备的检查项和所述其它类被检查设备的检查项作为所述采集服务器的待执行任子任务。

在步骤143中,由于分配给采集服务器-2的第五个redhat主机的最后一个检查项对应的任务量为29,即未达到采集服务器-2的任务量要求,则继续从windows主机中选取任务项,本实施例将第一个windows主机所有检查项以及第二个windows主机的前四个检查项分配给采集服务器-2,然后将第二个windows主机的其它检查项以及其它windows主机的检查项分配给采集服务器-3。

经过上述步骤的任务分配,三台采集服务器分别分配的检查任务如下表四所示:

表四:

通过上述步骤完成了待执行任务的分配,根据任务分配结果,采集服务器便可以进行被检查设备的登录,开始执行检查任务。最后的检查结果由核心服务器进行集中汇总并生成检查报表。

本发明实施例提供的核查任务分配方法,从待执行任务中被检查设备的数量、涉及到的检查项数量及其权重值、采集服务器负载情况多个维度综合考量,将待执行任务进行细粒度的拆分,并将拆分结果进行统一调度,充分利用采集服务器的性能,有效的提升了任务的执行效率,解决了现有安全配置核查系统任务分配算法过于简单、任务执行效率低下等诸多问题,使安全配置基线核查系统具有更高的推广价值。

对于系统已录入的终端设备以及采集服务器,由于网络环境调整、设备下线、设备宕机等原因,导致设备无法连接,针对上述情况,本发明实施例还提供了另一种安全配置核查任务分配方法。图3为本发明实施例二提供的安全配置核查任务分配方法的流程示意图,如图3所示,该方法具体包括如下步骤:

s201:获取待执行任务中的各待检查设备的ip地址。

从待执行任务中获取待检查设备的ip地址列表,并获取所选择设备的设备类型信息(设备类型如windows、redhat、oracle、cisco等)。

s202:根据各所述待检查设备的ip地址,分别向各所述待检查设备发送设备探测指令。

根据步骤s201中获取到的待检查设备地址列表,向待检查设备发送对应的设备探测指令,以探测设备是否存活,不连通设备将不会进行安全配置基线检查。

s203:判断是否接收到所述待检查设备根据所述设备探测指令返回的设备存活信息。

如果接收到,则执行步骤s204,如果未接收到,则说明该设备当前无法连通进行检查,生成报表并展现非存活设备。

s204:如果接收到,则将返回所述设备存活信息的待检查设备判定为被检查设备。

如果接收到,则说明该设备可以被正常检查,返回存活设备列表,并执行后续步骤。

s205:获取待执行任务中的被检查设备信息以及与所述被检查设备对应的检查项信息。

s206:根据所述被检查设备信息、所述检查项信息、以及与所述检查项对应的检查项权重值,计算出所述待执行任务所包含的总任务量。

s207:分别向核查系统中的各采集服务器发送服务器探测指令。

s208:判断是否接收到所述采集服务器根据所述服务器探测指令返回的服务器存活信息。

如果接收到,则执行步骤s209;如果未接收到,则说明该服务器当前处于非连接状态,并展现未存活采集服务器。

s209:如果接收到,则获取返回所述服务器存活信息的采集服务器的当前性能数据。

s210:根据各所述采集服务器的当前性能数据以及所述待执行任务所包含的总任务量,将所述待执行任务进行拆分、以及将拆分得到的待执行子任务分配给相应的所述采集服务器。

本发明实施例提供的核查任务分配方法,根据待执行任务中待检查设备的连接状态以及核查系统中采集服务器的连接状态,对待执行任务量进行计算以及任务的拆分,使任务分配更为精准,进一步提升任务执行效率。

对应于上述核查任务分配方法,本发明实施例还提供了一种安全配置核查任务分配装置。图4为本发明实施例提供的一种安全配置核查任务分配装置的基本结构示意图,如图4所示该装置主要包括:

任务信息获取模块410:用于获取待执行任务中的被检查设备信息以及与所述被检查设备对应的检查项信息。

总任务量计算模块420:用于根据所述被检查设备信息、所述检查项信息、以及与所述检查项对应的检查项权重值,计算出所述待执行任务所包含的总任务量。

性能数据获取模块430:用于获取核查系统中各采集服务器的当前性能数据。

其中,该性能数据获取模块430包括:

服务器探测子模块431:用于分别向核查系统中的各采集服务器发送服务器探测指令;

服务器存活判断子模块432:用于判断是否接收到所述采集服务器根据所述服务器探测指令返回的服务器存活信息;

性能数据获取子模块433:用于如果接收到所述采集服务器根据所述服务器探测指令返回的服务器存活信息,则获取返回所述服务器存活信息的采集服务器的当前性能数据。

任务分配模块440:用于根据各所述采集服务器的当前性能数据以及所述待执行任务所包含的总任务量,将所述待执行任务进行拆分、以及将拆分得到的待执行子任务分配给相应的所述采集服务器。

其中,该任务分配模块440包括:

服务器任务计算子模块441:根据各所述采集服务器的当前性能数据以及所述待执行任务所包含的总任务量,计算出各所述采集服务器待分配的任务量;

任务拆分子模块442:根据各所述采集服务器待分配的任务量,将所述待执行任务拆分为与各所述采集服务器待分配的任务量相匹配的待执行任子任务。

进一步的,该任务分配装置还包括:

设备地址获取模块450:用于获取待执行任务中的各待检查设备的ip地址。

设备探测指令发送模块460:用于根据各所述待检查设备的ip地址,分别向各所述待检查设备发送设备探测指令。

设备存活判断模块470:用于判断是否接收到所述待检查设备根据所述设备探测指令返回的设备存活信息。

被检设备判定模块480:用于如果接收到所述待检查设备根据所述设备探测指令返回的设备存活信息,则将返回所述设备存活信息的待检查设备判定为被检查设备。

本发明实施例提供的核查任务分配装置,从待执行任务中被检查设备的数量、涉及到的检查项数量及其权重值、采集服务器负载情况多个维度综合考量,将待执行任务进行细粒度的拆分,并将拆分结果进行统一调度,充分利用采集服务器的性能,有效的提升了任务的执行效率,解决了现有安全配置核查系统任务分配算法过于简单、任务执行效率低下等诸多问题,使安全配置基线核查系统具有更高的推广价值。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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