一种云架构下网络靶场软硬结合模型构建方法转让专利

申请号 : CN201910639169.4

文献号 : CN110290045B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨亦松魏宝单联强

申请人 : 北京计算机技术及应用研究所

摘要 :

本发明涉及一种云架构下网络靶场软硬结合模型构建方法,涉及信息安全技术领域。本发明基于OpenStack云平台构建VXLAN子网,将虚拟设备网络与物理设备网络相互隔离。通过建立中心网络节点,物理设备与虚拟设备通过中心网络节点,依靠软件定义网络技术进行信息交互,从而实现软硬结合,使网络靶场能够高效的与外部物理设备进行数据通信,提高了网络靶场的实用性。该方法依靠VXLAN技术在三层网络中实现了二层网络的扩展,基于VXLAN组建子网,有效隔离外部网络与内部网络之间的数据泛洪,从而减少了网络流量泛洪,提高了网络传输效率及网络靶场的安全性。

权利要求 :

1.一种云架构下网络靶场软硬结合模型构建方法,其特征在于,包括以下步骤:步骤一、构建云平台计算节点作为VXLAN子网,所述云平台计算节点用于按照软件定义网络OPENVSWITCHE中的流表规则进行网络数据转发,在所述云平台计算节点中,包括虚拟设备、第一br-int虚拟交换机、第一br-tun虚拟交换机和DHCP服务器;将虚拟设备连接到第一br-int虚拟交换机上,第一br-int虚拟交换机用于宿主机内部VXLAN网络的划分,以隔离不同的虚拟机;第一br-tun虚拟交换机用于建立VXLAN网络传输所需要的VETH隧道,第一br-int虚拟交换机上的patch-tun端口与第一br-tun虚拟交换机上的patch-int端口相互连接;DHCP服务器与第一br-int虚拟交换机相连,用于为虚拟设备提供IP地址分配服务;

步骤二、构建云平台中心网络节点,所述云平台中心网络节点包括三层网络代理服务器、虚拟路由器、第二br-tun虚拟交换机、第二br-int虚拟交换机和br-provider虚拟交换机;所述虚拟路由器用于实现VXLAN子网之间的通信,不同宿主机通过覆盖网络实现数据传输;所述三层网络代理服务器用于管理虚拟路由器,并将虚拟路由器连接到第二br-int虚拟交换机上;第二br-int虚拟交换机的patch-tun端口与第二br-tun虚拟交换机上的patch-int端口相互连接;第二br-int虚拟交换机的int-br-provider端口与br-provider虚拟交换机上的phy-br-provider端口相互连接;第二br-tun虚拟交换机用于建立VXLAN网络传输所需要的VETH隧道;br-provider虚拟交换机与云平台中心网络节点中一个物理网口绑定,用于实现与物理环境之间的网络数据传输,从而实现与物理设备之间的网络数据传输;

所述虚拟设备及所有虚拟交换机都运行在宿主机的Linux操作系统中。

2.如权利要求1所述的方法,其特征在于,将步骤一和步骤二交换顺序。

3.如权利要求1所述的方法,其特征在于,将步骤一和步骤二同时执行。

4.如权利要求1所述的方法,其特征在于,所述网络靶场软硬结合模型中所有节点中均启动了Open vSwitch agent、Metadata agent、DHCP agent三项服务。

5.如权利要求1所述的方法,其特征在于,所述云平台中心网络节点中还启动了L3 agent服务,负责三层数据交换。

6.如权利要求1至5中任一项所述的方法,其特征在于,所述云平台为OpenStack云平台。

7.一种利用如权利要求1至6中任一项所述的方法所构建的网络靶场软硬结合模型中的数据传输方法,其特征在于,所述云平台计算节点中的数据流向过程为:

1.1虚拟设备网络接口(1)通过VETH隧道将数据包转发到宿主机的Linux操作系统内部安全组网桥的一个端口(2);

1.2安全组网桥上的安全组规则服务器(3)跟踪连接并设置防火墙;

1.3安全组网桥的另一个端口(4)通过VETH隧道将数据包转发到第一br-int虚拟交换机的连接虚拟设备的端口(5);

1.4第一br-int虚拟交换机为数据添加内部VLAN ID;

1.5第一br-int虚拟交换机将内部VLAN ID转换为内部传输的隧道地址;

1.6第一br-int虚拟交换机通过patch-tun端口(6)将数据发送到第一br-tun虚拟交换机的patch-int端口(7);

1.7第一br-tun虚拟交换机在端口(8)对数据包进行VXLAN分组标记;

1.8覆盖网络的底层物理接口(9),通过覆盖网络(10)将数据包发送到云平台中心网络节点。

8.一种利用如权利要求7所述的方法所构建的网络靶场软硬结合模型中的数据传输方法,其特征在于,所述云平台中心网络节点中的数据流向为:

2.1覆盖网络的底层物理接口(11)将数据包转发到第二br-tun虚拟交换机(12);

2.2第二br-tun虚拟交换机拆封数据包,并向其添加内部隧道地址;

2.3第二br-tun虚拟交换机将内部隧道地址转变为内部Vlan ID;

2.4第二br-tun虚拟交换机通过自身patch-int端口(13)将数据包发送到第二br-int虚拟交换机的patch-tun端口(14);

2.5第二br-int虚拟交换内部机网段接口(15)接收到数据包,删除数据包中的VLAN ID,之后将数据包发送到虚拟路由器所在的命名空间中,到达接口(16);

2.6虚拟路由器对接收到的数据包进行SNAT转换,将源IP地址更改为虚拟路由器所连接的外部网段IP地址,并通过外部网段接口(17)将数据发送到第二br-int虚拟交换机上(18);

2.7第二br-int虚拟交换机为数据包添加内部VLAN ID;

2.8第二br-int虚拟交换机通过int-br-provider端口(19)将数据包发送到br-provider虚拟交换机的phy-br-provider端口(20);

2.9br-provider虚拟交换机去掉数据包中的内部VLAN ID;

2.10br-provider虚拟交换机通过外部网络接口(21)将数据包转发到宿主机的物理网络接口(22);

2.11宿主机的物理网络接口(22)将数据包发送到外部物理设备。

9.如权利要求8所述的方法,其特征在于,在数据传输方法中,当物理设备向虚拟设备发送数据时,仅改变网络数据流向,所经过的虚拟网络设备没有变化。

说明书 :

一种云架构下网络靶场软硬结合模型构建方法

技术领域

[0001] 本发明涉及信息安全技术领域,具体涉及一种云架构下网络靶场软硬结合模型构建方法。

背景技术

[0002] 网络靶场作为应对网络安全威胁、网络对抗技术装备试验、网络攻防战法演练、培育生成网络攻防对抗能力的重要基础设施,被众多网络安全部门所应用。目前网络靶场的构建很多基于OpenStack开源云计算平台。
[0003] 在网络靶场的实际应用中不可避免地存在虚拟设备与物理设备之间的信息交互。将这种信息交互过程称之为“软硬结合”。例如,虚拟机和与PC机、路由器、防火墙等之间的信息交互。由于网络靶场具有复杂,异构,全面等特点,在单一平层网络中使用软件定义网络技术实现软硬结合,存在效率及安全性低的问题。因此如何高效、安全的实现网络靶场软硬结合成为一个亟需解决的问题。

发明内容

[0004] (一)要解决的技术问题
[0005] 本发明要解决的技术问题是:如何实现一种云架构下网络靶场软硬结合模型构建方法,以提高网络传输效率及网络靶场的安全性。
[0006] (二)技术方案
[0007] 为了解决上述技术问题,本发明提供了一种云架构下网络靶场软硬结合模型构建方法,包括以下步骤:
[0008] 步骤一、构建云平台计算节点作为VXLAN子网,所述云平台计算节点用于按照软件定义网络OPENVSWITCHE中的流表规则进行网络数据转发,在所述云平台计算节点中,包括虚拟设备、第一虚拟交换机br-int、第一虚拟交换机br-tun和DHCP服务器;将虚拟设备连接到第一br-int虚拟交换机上,第一br-int虚拟交换机用于宿主机内部VXLAN网络的划分,以隔离不同的虚拟机;第一br-tun虚拟交换机用于建立VXLAN网络传输所需要的VETH隧道,第一虚拟交换机br-int上的patch-tun端口与第一br-tun虚拟交换机上的patch-int 端口相互连接;DHCP服务器与第一br-int虚拟交换机相连,用于为虚拟设备提供IP地址分配服务;
[0009] 步骤二、构建云平台中心网络节点,所述云平台中心网络节点包括三层网络代理服务器、虚拟路由器、第二br-tun虚拟交换机、第二 br-int虚拟交换机和br-provider虚拟交换机;所述虚拟路由器用于实现VXLAN子网之间的通信,不同宿主机通过覆盖网络实现数据传输;所述三层网络代理服务器用于管理虚拟路由器,并将虚拟路由器连接到第二br-int虚拟交换机上;第二br-int虚拟交换机的patch-tun 端口与第二br-tun虚拟交换机上的patch-int端口相互连接;第二br-int 虚拟交换机的int-br-provider端口与br-provider虚拟交换机上的 phy-br-provider端口相互连接;第二br-tun虚拟交换机用于建立 VXLAN网络传输所需要的VETH隧道;br-provider虚拟交换机与云平台中心网络节点中一个物理网口绑定,用于实现与物理环境之间的网络数据传输,从而实现与物理设备之间的网络数据传输;
[0010] 所述虚拟设备及所有虚拟交换机都运行在宿主机的Linux操作系统中。
[0011] 优选地,将步骤一和步骤二交换顺序。
[0012] 优选地,将步骤一和步骤二同时执行。
[0013] 优选地,所述网络靶场软硬结合模型中所有节点中均启动了 Open vSwitch agent、Metadata agent、DHCP agent三项服务。
[0014] 优选地,所述云平台中心网络节点中还启动了L3 agent服务,负责三层数据交换。
[0015] 优选地,所述物理网络与物理设备之间通过物理交换机连接。
[0016] 优选地,所述云平台为OpenStack云平台。
[0017] 根据上述任意一种方法 所构建的网络靶场软硬结合模型中的数据传输方法,其特征在于,
[0018] 所述云平台计算节点中的数据流向过程为:
[0019] 1.1虚拟设备网络接口(1)通过VETH隧道将数据包转发到宿主机的Linux操作系统内部安全组网桥的一个端口(2);
[0020] 1.2安全组网桥上的安全组规则服务器(3)跟踪连接并设置防火墙;
[0021] 1.3安全组网桥的另一个端口(4)通过VETH隧道将数据包转发到第一br-int虚拟交换机的连接虚拟设备的端口(5);
[0022] 1.4第一br-int虚拟交换机为数据添加内部VLAN ID;
[0023] 1.5第一br-int虚拟交换机将内部VLAN ID转换为内部传输的隧道地址;
[0024] 1.6第一br-int虚拟交换机通过patch-tun端口(6)将数据发送到第一br-tun虚拟交换机的patch-int端口(7);
[0025] 1.7第一br-tun虚拟交换机在端口(8)对数据包进行VXLAN 分组标记;
[0026] 1.8覆盖网络的底层物理接口(9),通过覆盖网络(10)将数据包发送到云平台中心网络节点。
[0027] 本发明还提供了一种利用所述的方法所构建的网络靶场软硬结合模型中的数据传输方法,所述云平台中心网络节点中的数据流向为:
[0028] 2.1覆盖网络的底层物理接口(11)将数据包转发到第二br-tun 虚拟交换机(12);
[0029] 2.2第二br-tun虚拟交换机拆封数据包,并向其添加内部隧道地址;
[0030] 2.3第二br-tun虚拟交换机将内部隧道地址转变为内部Vlan ID;
[0031] 2.4第二br-tun虚拟交换机通过自身patch-int端口(13)将数据包发送到第二br-int虚拟交换机的patch-tun端口(14);
[0032] 2.5第二br-int虚拟交换内部机网段接口(15)接收到数据包,删除数据包中的VLAN ID,之后将数据包发送到虚拟路由器所在的命名空间中,到达接口(16);
[0033] 2.6虚拟路由器对接收到的数据包进行SNAT转换,将源IP地址更改为虚拟路由器所连接的外部网段IP地址,并通过外部网段接口 (17)将数据发送到第二br-int虚拟交换机上(18);
[0034] 2.7第二br-int虚拟交换机为数据包添加内部VLAN ID;
[0035] 2.8第二br-int虚拟交换机通过int-br-provider端口(19)将数据包发送到br-provider虚拟交换机的phy-br-provider端口(20);
[0036] 2.9 br-provider虚拟交换机去掉数据包中的内部VLAN ID;
[0037] 2.10 br-provider虚拟交换机通过外部网络接口(21)将数据包转发到宿主机的物理网络接口(22);
[0038] 2.11宿主机的物理网络接口(22)将数据包发送到外部物理设备。
[0039] 优选地,在数据传输方法中,当物理设备向虚拟设备发送数据时,仅改变网络数据流向,所经过的虚拟网络设备没有变化。
[0040] (三)有益效果
[0041] 本发明基于OpenStack云平台构建VXLAN子网,将虚拟设备网络与物理设备网络相互隔离。通过建立中心网络节点,物理设备与虚拟设备通过中心网络节点,依靠软件定义网络技术(OPENVSWITCH) 进行信息交互,从而实现软硬结合,使网络靶场能够高效的与外部物理设备进行数据通信,提高了网络靶场的实用性。该方法依靠VXLAN 技术在三层网络中实现了二层网络的扩展,基于VXLAN组建子网,有效隔离外部网络与内部网络之间的数据泛洪,从而减少了网络流量泛洪,提高了网络传输效率及网络靶场的安全性。

附图说明

[0042] 图1是云架构下网络靶场软硬结合模型的总体架构图;
[0043] 图2是云平台中心网络节点和云平台计算节点中网络服务配置图示;
[0044] 图3是物理设备和虚拟设备之间通信的网络数据流向图。

具体实施方式

[0045] 为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
[0046] 图1是云架构下网络靶场软硬结合模型的总体架构图,本发明提供的一种云架构下网络靶场软硬结合模型构建方法,包括以下步骤:
[0047] 步骤一、构建云平台计算节点作为VXLAN子网,所述云平台计算节点用于按照软件定义网络OPENVSWITCHE中的流表规则进行网络数据转发,在所述云平台计算节点中,包括虚拟设备(或称为虚拟机)、第一br-int虚拟交换机、第一br-tun虚拟交换机和DHCP 服务器;将虚拟设备连接到第一br-int虚拟交换机上,第一br-int虚拟交换机用于宿主机内部VXLAN网络的划分,以隔离不同的虚拟机;第一br-tun虚拟交换机用于建立VXLAN网络传输所需要的隧道,第一br-int虚拟交换机上的patch-tun端口与第一br-tun虚拟交换机上的 patch-int端口相互连接;DHCP服务器与第一br-int虚拟交换机相连,用于为虚拟设备提供IP地址分配服务;
[0048] 步骤二、构建云平台中心网络节点,所述云平台中心网络节点包括三层网络代理服务器、虚拟路由器、第二br-tun虚拟交换机、第二 br-int虚拟交换机和br-provider虚拟交换机;所述虚拟路由器用于实现VXLAN子网之间的通信,不同宿主机通过覆盖网络(Overlay network)实现数据传输;所述三层网络代理服务器用于管理虚拟路由器,并将虚拟路由器连接到第二br-int虚拟交换机上;第二br-int 虚拟交换机的patch-tun端口与第二br-tun虚拟交换机上的patch-int 端口相互连接。第二br-int虚拟交换机的int-br-provider端口与 br-provider虚拟交换机上的phy-br-provider端口相互连接。第二br-tun 虚拟交换机用于建立VXLAN网络传输所需要的VETH隧道。 br-provider虚拟交换机与云平台中心网络节点中一个物理网口绑定,用于实现与物理环境之间的网络数据传输,从而实现与物理设备之间的网络数据传输。
[0049] 所述虚拟设备及所有虚拟交换机都运行在宿主机的Linux操作系统中。
[0050] 以上各虚拟交换机是根据其功能及对应的网络而命名,各虚拟交换机的端口是根据端口功能及对应的网络而命名的。patch-int、 patch-tun、int-br-provider、phy-br-provider这四个端口两两成对出现,负责将各自所在的虚拟交换机相互连接。
[0051] 上述步骤一和步骤二可以交换顺序,或者同时执行。
[0052] 图2是云平台中心网络节点和云平台计算节点中网络服务配置列表,具体为:
[0053] (1)图2中master节点为云平台中心网络节点,slave1、slave2、 slave3、均为云平台计算节点;
[0054] (2)图2所有节点中均启动了Open vSwitch agent、Metadata agent、DHCP agent三项服务。云平台中心网络节点master中启动了L3 agent服务,负责三层数据交换。
[0055] 图3是物理设备和虚拟设备之间通信的网络数据流向图,一种利用所述构建方法所构建的网络靶场软硬结合模型中,数据传输方法如下:
[0056] (1)云平台计算节点中的数据流向过程为:
[0057] 1.1虚拟设备网络接口1通过VETH隧道将数据包转发到宿主机的Linux操作系统内部安全组网桥的一个端口2;
[0058] 1.2安全组网桥上的安全组规则服务器3跟踪连接并设置防火墙;
[0059] 1.3安全组网桥另一个端口,即OVS端口4通过VETH隧道将数据包转发到第一br-int虚拟交换机的连接虚拟设备的端口5(即图 1中第一br-int虚拟交换机的端口2);
[0060] 1.4第一br-int虚拟交换机为数据添加内部VLAN ID;
[0061] 1.5第一br-int虚拟交换机将内部VLAN ID转换为内部传输的隧道地址;
[0062] 1.6第一br-int虚拟交换机通过patch-tun端口6将数据发送到第一br-tun虚拟交换机的patch-int端口7;
[0063] 1.7第一br-tun虚拟交换机在端口8对数据包进行VXLAN分组标记;
[0064] 1.8覆盖网络的底层物理接口9,通过覆盖网络10将数据包发送到云平台中心网络节点。
[0065] (2)云平台中心网络节点中的数据流向为:
[0066] 2.1覆盖网络的底层物理接口11将数据包转发到第二br-tun虚拟交换机12;
[0067] 2.2第二br-tun虚拟交换机拆封数据包,并向其添加内部隧道地址;
[0068] 2.3第二br-tun虚拟交换机将内部隧道地址转变为内部Vlan ID;
[0069] 2.4第二br-tun虚拟交换机通过自身patch-int端口13将数据包发送到第二br-int虚拟交换机的patch-tun端口14;
[0070] 2.5第二br-int虚拟交换内部机网段接口15接收到数据包,删除数据包中的VLAN ID,之后将数据包发送到虚拟路由器所在的命名空间中,到达接口16;
[0071] 2.6虚拟路由器对接收到的数据包进行SNAT转换,将源IP地址更改为虚拟路由器所连接的外部网段IP地址,并通过外部网段接口 17将数据发送到第二br-int虚拟交换机上18。
[0072] 2.7第二br-int虚拟交换机为数据包添加内部VLAN ID;
[0073] 2.8第二br-int虚拟交换机通过int-br-provider端口19将数据包发送到br-provider虚拟交换机的phy-br-provider端口20;
[0074] 2.9 br-provider虚拟交换机去掉数据包中的内部VLAN ID;
[0075] 2.10 br-provider虚拟交换机通过外部网络接口21将数据包转发到宿主机物理网络接口22;
[0076] 2.11宿主机物理网络接口22通过基础网络将数据包发送到外部物理设备。
[0077] 数据传输方法中,当物理设备向虚拟设备发送数据时,仅改变网络数据流向,所经过的虚拟网络设备没有变化。
[0078] 本发明的有益效果是:本发明提出一种云架构下网络靶场软硬结合构建方法,使网络靶场能够高效的与外部物理设备进行数据通信,提高了网络靶场的实用性。通过建立中心网络节点,基于VXLAN组建子网,有效隔离外部网络与内部网络之间的数据泛洪,提高了网络靶场的安全性。
[0079] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。