一种虚拟机安全防护方法、装置、可读介质及存储控制器与流程

文档序号:14776466发布日期:2018-06-23 03:30阅读:151来源:国知局
一种虚拟机安全防护方法、装置、可读介质及存储控制器与流程

本发明涉及计算机技术领域,特别涉及一种虚拟机安全防护方法、装置、可读介质及存储控制器。



背景技术:

随着计算计应用技术的快速发展,虚拟机应用技术也得到广泛的普及,为了实现对部署在主机上的一个或多个虚拟机进行安全防护,通常需要对相应的流量进行过滤,即对相应的流量进行检测以确定其是否安全,仅将检测结果为安全的流量发送至相应的虚拟机。

目前,在实现对主机上的虚拟机进行安全防护时,通过需要在主机的OPEN VSWITCH桥与每一个虚拟机之间设置相应的Linux网桥。当主机上部署大量的虚拟机时,Linux网桥的数量也大量增多,数量较多的Linux网桥对主机的资源消耗较大。



技术实现要素:

本发明实施例提供了一种虚拟机安全防护方法及装置,资源消耗较低。

第一方面,本发明提供了一种虚拟机安全防护方法,包括:

确定目标主机上的至少一个待防护虚拟机,并在所述目标主机上创建所述至少一个待防护虚拟机所对应的命名空间;

获取所述至少一个待防护虚拟机所对应的流量过滤规则,并将所述流量过滤规则发送至所述命名空间;

根据所述目标主机上已经创建的各个当前命名空间以及已经部署的各个当前虚拟机,创建流量引流量表和流量转发流表;

将所述流量引流流表和所述流量转发流表发送至所述目标主机的OPENVSWITCH桥,以使所述OPEN VSWITCH桥根据其接收并存储的所述流量引流流表将对应于所述至少一个待防护虚拟机的访问流量转发至所述命名空间;

利用所述命名空间根据其接收并存储的所述流量过滤规则检测接收的各个所述访问流量是否安全,并将对应检测结果为安全的各个所述访问流量返还给所述OPEN VSWITCH桥,以使所述OPEN VSWITCH桥根据其接收并存储的所述流量转发流表将对应检测结果为安全的每一条所述访问流量分别转发给对应的待防护虚拟机。

优选地,

在所述在所述目标主机上创建所述至少一个待防护虚拟机所对应的命名空间之后,进一步包括:创建连接接口,将所述连接接口的第一端口与所述命名空间相连,并将所述连接接口的第二端口与所述OPEN VSWITCH桥相连。

优选地,

所述将所述连接接口的第一端口与所述命名空间相连,进一步包括:设置所述第一端口所对应的网络地址,并提供。

优选地,

进一步包括:接收外部根据所述网络地址发送的对应于所述命名空间的规则管理请求,根据所述规则管理请求对所述目标命名空间中存储的当前流量过滤规则进行管理。

第二方面,本发明实施例提供了一种虚拟机安全防护装置,包括:

命名空间构建模块,用于确定目标主机上的至少一个待防护虚拟机,并在所述目标主机上创建所述至少一个待防护虚拟机所对应的命名空间;

规则处理模块,用于获取所述至少一个待防护虚拟机所对应的流量过滤规则,并将所述流量过滤规则发送至所述命名空间;

流表创建模块,用于根据所述目标主机上已经创建的各个当前命名空间以及已经部署的各个当前虚拟机,创建流量引流量表和流量转发流表;

流表下发模块,用于将所述流量引流流表和所述流量转发流表发送至所述目标主机的OPEN VSWITCH桥,以使所述OPEN VSWITCH桥根据其接收并存储的所述流量引流流表将对应于所述至少一个待防护虚拟机的访问流量转发至所述命名空间;

所述命名空间,用于根据其接收并存储的所述流量过滤规则检测接收的各个所述访问流量是否安全,并将对应检测结果为安全的各个所述访问流量返还给所述OPEN VSWITCH桥,以使所述OPEN VSWITCH桥根据其接收并存储的所述流量转发流表将对应检测结果为安全的每一条所述访问流量分别转发给对应的待防护虚拟机。

优选地,

进一步包括:接口管理模块;其中,

所述接口管理模块,用于创建连接接口,将所述连接接口的第一端口与所述命名空间相连,并将所述连接接口的第二端口与所述OPEN VSWITCH桥相连。

优选地,

所述接口管理模块,进一步用于设置所述第一端口所对应的网络地址,并提供。

优选地,

还包括:规则管理模块;其中,

所述规则管理模块,用于接收外部根据所述网络地址发送的对应于所述命名空间的规则管理请求,根据所述规则管理请求对所述目标命名空间中存储的当前流量过滤规则进行管理。

第三方面,本发明实施例提供了一种可读介质,包括执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行第一方面中任一项所述的方法。

第四方面,本发明实施例提供了一种存储控制器,包括:处理器、存储器和总线;

所述处理器和所述存储器通过所述总线连接;

所述存储器,当所述存储控制器运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述存储控制器执行第一方面中任一项所述的方法。

本发明实施例提供了一种虚拟机安全防护方法、装置、可读介质及存储控制器,该方法中,通过在目标主机上对部署于目标主机上的至少一个待防护虚拟机创建一个对应的命名空间,然后则可将各个待防护虚拟机所对应的流量过滤规则发送至该命名空间,并根据目标主机上已经创建的各个当前命名空间以及已经部署的各个当前虚拟机创建流量引流量表和流量转发流表,在将流量引流流表和流量转发流表下发至目标主机的OPEN VSWITCH桥之后,OPEN VSWITCH桥则可根据流量引流流表将对应于至少一个待防护虚拟机的访问流量转发至该命名空间,命名空间则可根据流量过滤规则检测各个访问流量是否安全,仅将对应检测结果为安全的各个访问流量返还给OPEN VSWITCH桥,使得OPEN VSWITCH桥根据流量转发流表将对应检测结果为安全的每一条访问流量分别转发给对应的待防护虚拟机,从而实现通过对需要发送至各个待防护虚拟机的访问流量进行安全过滤,以实现对各个待防护虚拟机进行安全防护。综上可见,通过本发明实施例提供的技术方案实现对目标主机上的一个或多个待防护虚拟机进行安全防护时,无需在目标主机中针对每一个虚拟机分别设置相应的Linux网桥,资源消耗较低。

附图说明

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

图1是本发明一实施例提供的一种虚拟机安全防护方法的流程图;

图2是本发明一实施例提供的一种虚拟机安全防护装置的结构示意图;

图3是本发明一实施例提供的另一种虚拟机安全防护装置的结构示意图;

图4是本发明一实施例提供的又一种虚拟机安全防护装置的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本发明实施例提供了一种虚拟机安全防护方法,包括:

步骤101,确定目标主机上的至少一个待防护虚拟机,并在所述目标主机上创建所述至少一个待防护虚拟机所对应的命名空间;

步骤102,获取所述至少一个待防护虚拟机所对应的流量过滤规则,并将所述流量过滤规则发送至所述命名空间;

步骤103,根据所述目标主机上已经创建的各个当前命名空间以及已经部署的各个当前虚拟机,创建流量引流量表和流量转发流表;

步骤104,将所述流量引流流表和所述流量转发流表发送至所述目标主机的OPEN VSWITCH桥,以使所述OPEN VSWITCH桥根据其接收并存储的所述流量引流流表将对应于所述至少一个待防护虚拟机的至少一个访问流量转发至所述命名空间;

步骤105,利用所述命名空间根据其接收并存储的所述流量过滤规则检测接收的各个所述访问流量是否安全,并将对应检测结果为安全的各个所述访问流量返还给所述OPEN VSWITCH桥,以使所述OPEN VSWITCH桥根据其接收并存储的所述流量转发流表将对应检测结果为安全的每一条所述访问流量分别转发给对应的待防护虚拟机。

如图1所示的实施例,通过在目标主机上对部署于目标主机上的至少一个待防护虚拟机创建一个对应的命名空间,然后则可将各个待防护虚拟机所对应的流量过滤规则发送至该命名空间,并根据目标主机上已经创建的各个当前命名空间以及已经部署的各个当前虚拟机创建流量引流量表和流量转发流表,在将流量引流流表和流量转发流表下发至目标主机的OPEN VSWITCH桥之后,OPEN VSWITCH桥则可根据流量引流流表将对应于至少一个待防护虚拟机的访问流量转发至该命名空间,命名空间则可根据流量过滤规则检测各个访问流量是否安全,仅将对应检测结果为安全的各个访问流量返还给OPEN VSWITCH桥,使得OPEN VSWITCH桥根据流量转发流表将对应检测结果为安全的每一条访问流量分别转发给对应的待防护虚拟机,从而实现通过对需要发送至各个待防护虚拟机的访问流量进行安全过滤,以实现对各个待防护虚拟机进行安全防护。综上可见,通过本发明实施例提供的技术方案实现对目标主机上的一个或多个待防护虚拟机进行安全防护时,无需在目标主机中针对每一个虚拟机分别设置相应的Linux网桥,资源消耗较低。

本发明一个实施例中,可结合用户的实际业务需求,循环执行步骤101至步骤102,实现在目标主机上创建多个命名空间,一个命名空间对应一个或多个待防护虚拟机,且任意两个命名空间不会对应于同一个虚拟机。如此,一方面,单个命名空间需要检测的访问流量的数量则相对较少,多个命名空间还可以并发处理多个待防护虚拟机所分别对应的访问流量,可快速实现对大量的访问流量分别进行安全检测;另一方面,对目标主机上的各个虚拟机进行安全防护时,管理更为灵活,比如,可以仅针对目标主机上的部分虚拟机设置其对应的命名空间,即实现仅针对目标主机上部分虚拟机进行安全防护,又如,可以为目标主机上的每一个虚拟机单创建一个命名空间,从而实现结合用户的实际业务需求针对目标主机上的每一个虚拟机分别设置不同的流量规则。

本发明上述实施例中,流量引流流表中可携带目标主机中已经创建的各个当前命名空间与已经创建的各个当前虚拟机之间的对应关系,举例来说,流量引流流表中可携带待防护虚拟机A与待防护虚拟机B与命名空间X之间的对应关系,当OPEN VSWITCH桥接收到需要发送至待防护虚拟机A或发送至待防护虚拟机B的访问流量时,OPEN VSWITCH桥则可根据流量引流流量表中携带的对应关系将该访问流量转发至命名空间A。基于相似的原理,流量转发流表中可携带各个当前虚拟机所对应的路径信息,以便根据携带的各个路径信息将对应检测结果为安全的各个访问流量转发至对应的虚拟机。

进一步的,为了实现对创建的命名空间与目标主机上虚拟网络进行连通,本发明一个实施例中,在所述在所述目标主机上创建所述至少一个待防护虚拟机所对应的命名空间之后,进一步包括:创建连接接口,将所述连接接口的第一端口与所述命名空间相连,并将所述连接接口的第二端口与所述OPEN VSWITCH桥相连。

进一步的,本发明一个实施例中,所述将所述连接接口的第一端口与所述命名空间相连,进一步包括:设置所述第一端口所对应的网络地址,并提供。如此,当目标主机上创建有多个命名空间时,外部的控制装置则可根据各个命名空间所分别对应的网络地址实现对各个命名空间进行访问以对各个命名空间以及各个命名空间接收到并存储的流量过滤规则进行管理。

相应的,本发明一个实施例中,进一步包括:接收外部根据所述网络地址发送的对应于所述命名空间的规则管理请求,根据所述规则管理请求对所述目标命名空间中存储的当前流量过滤规则进行管理。比如,对目标命名空间中存储的当前流量过滤规则进行新增、删除及修改等管理。

如图2所示,本发明实施例提供了一种虚拟机安全防护装置,包括:

命名空间构建模块201,用于确定目标主机上的至少一个待防护虚拟机,并在所述目标主机上创建所述至少一个待防护虚拟机所对应的命名空间205;

规则处理模块202,用于获取所述至少一个待防护虚拟机所对应的流量过滤规则,并将所述流量过滤规则发送至所述命名空间205;

流表创建模块203,用于根据所述目标主机上已经创建的各个当前命名空间以及已经部署的各个当前虚拟机,创建流量引流量表和流量转发流表;

流表下发模块204,用于将所述流量引流流表和所述流量转发流表发送至所述目标主机的OPEN VSWITCH桥,以使所述OPEN VSWITCH桥根据其接收并存储的所述流量引流流表将对应于所述至少一个待防护虚拟机的至少一个访问流量转发至所述命名空间;

所述命名空间205,用于根据其接收并存储的所述流量过滤规则检测接收的各个所述访问流量是否安全,并将对应检测结果为安全的各个所述访问流量返还给所述OPEN VSWITCH桥,以使所述OPEN VSWITCH桥根据其接收并存储的所述流量转发流表将对应检测结果为安全的每一条所述访问流量分别转发给对应的待防护虚拟机。

如图3所示,本发明一个实施例中,进一步包括:接口管理模块301;其中,

所述接口管理模块301,用于创建连接接口,将所述连接接口的第一端口与所述命名空间相连,并将所述连接接口的第二端口与所述OPENVSWITCH桥相连。

本发明一个实施例中,所述接口管理模块301,进一步用于设置所述第一端口所对应的网络地址,并提供。

基于如图3所示的实施例,如图4所示,本发明一个实施例中,还包括:规则管理模块401;其中,

所述规则管理模块401,用于接收外部根据所述网络地址发送的对应于所述命名空间的规则管理请求,根据所述规则管理请求对所述目标命名空间中存储的当前流量过滤规则进行管理。

上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

本发明实施例提供了一种可读介质,包括执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行本发明任意一个实施例中提供的虚拟机安全防护方法。

本发明实施例提供了一种存储控制器,包括:处理器、存储器和总线;

所述处理器和所述存储器通过所述总线连接;

所述存储器,当所述存储控制器运行时,所述处理器执行所述存储器存储的所述执行指令,以使所述存储控制器执行本发明任意一个实施例中提供的虚拟机安全防护方法。

综上所述,本发明各个实施例至少具有如下有益效果:

1、本发明一实施例中,通过在目标主机上对部署于目标主机上的至少一个待防护虚拟机创建一个对应的命名空间,然后则可将各个待防护虚拟机所对应的流量过滤规则发送至该命名空间,并根据目标主机上已经创建的各个当前命名空间以及已经部署的各个当前虚拟机创建流量引流量表和流量转发流表,在将流量引流流表和流量转发流表下发至目标主机的OPEN VSWITCH桥之后,OPEN VSWITCH桥则可根据流量引流流表将对应于至少一个待防护虚拟机的访问流量转发至该命名空间,命名空间则可根据流量过滤规则检测各个访问流量是否安全,仅将对应检测结果为安全的各个访问流量返还给OPEN VSWITCH桥,使得OPEN VSWITCH桥根据流量转发流表将对应检测结果为安全的每一条访问流量分别转发给对应的待防护虚拟机,从而实现通过对需要发送至各个待防护虚拟机的访问流量进行安全过滤,以实现对各个待防护虚拟机进行安全防护。综上可见,通过本发明实施例提供的技术方案实现对目标主机上的一个或多个待防护虚拟机进行安全防护时,无需在目标主机中针对每一个虚拟机分别设置相应的Linux网桥,资源消耗较低。

2、本发明一实施例中,可结合用户的实际业务需求,在目标主机上创建多个命名空间,一个命名空间对应一个或多个待防护虚拟机,且任意两个命名空间不会对应于同一个虚拟机;如此,一方面,单个命名空间需要检测的访问流量的数量则相对较少,多个命名空间还可以并发处理多个待防护虚拟机所分别对应的访问流量,可快速实现对大量的访问流量分别进行安全检测;另一方面,对目标主机上的各个虚拟机进行安全防护时,管理更为灵活,比如,可以仅针对目标主机上的部分虚拟机设置其对应的命名空间,即实现仅针对目标主机上部分虚拟机进行安全防护,又如,可以为目标主机上的每一个虚拟机单创建一个命名空间,从而实现结合用户的实际业务需求针对目标主机上的每一个虚拟机分别设置不同的流量规则。

需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个〃····〃”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。

最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

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