一种计算机以及虚拟机环境中实现网络隔离的方法

文档序号:7696109阅读:222来源:国知局
专利名称:一种计算机以及虚拟机环境中实现网络隔离的方法
技术领域
本发明涉及计算才几领域中的虚拟机环境下网络的安全,特别是指计算机以 及虚拟机环境中实现网络隔离的方法。
背景技术
在计算机领域的虚拟机技术领域中,如图1所示,虚拟机系统通常包括安
装在计算机硬件平台上的虚拟机管理器(如Xen中的hypervisor)以及多个操 作系统,其中一个操作系统为HostOS,即主操作系统,其余为GuestOS,即 客户操作系统,在虚拟机环境下,真实网卡即物理网卡通常安装在硬件平台中, 该真实网卡能够被Host OS直接访问,但Guest OS必须使用由虚拟机管理器 分配给该操作系统的虚拟网卡访问该真实网卡,从而实现Guest OS与外部网 络的通信。
再如图l所示,为现有的一种虚拟环境下计算机的网络连接结构图,该图 中,在Xen环境下,Host OS和Guest OS通过hypervisor进行桥接之后,访问 外网,如Internet网络,hypervisor为Host OS分配一个第一虚拟网卡,为Guest OS分配一个第二虚拟网卡,Host OS通过其具有的第一虚拟网卡与虚拟机管 理器中的桥(即Bridge)连接,Guest OS也通过其具有的第二虚拟网卡与虚拟 机管理器中的桥(即Bridge)连接,然而该桥相对于外网来说是透明的,黑客 可以从该网桥处获得Host OS和Guest OS的虚拟网卡的地址,进而直接对Host OS和/或Guest OS进行攻击,可以说这种结构是极其不安全的。
为了提高虚拟机环境下网络的安全性,有人采用如图2所示的结构,图2 为Xen环境下Guest OS通过Host OS的NAT网络过滤驱动(网络地址映射, 功能是进行网络包的过滤和转发)模块访问外网,采用这种方式,黑客发现不 了 Guest OS的虚拟网卡地址,因此无法利用网络直接入侵Guest OS,但于Guest OS与Host OS使用了虚拟网卡连接,Guest OS依然可以-故黑客通过Host OS访问,当Host OS被入侵后,Guest OS的安全性也会受到极大威胁。 发明人在实现本发明的过程中,发现现有技术中至少存在如下问题 在虚拟环境中,Guest OS的网络安全性无法得到很好的保证。

发明内容
本发明要解决的技术问题是提供一种计算机以及虚拟机环境中实现网络 隔离的方法,实现虚拟机环境下的主操作系统和客户操作系统的网络隔离,保 证客户操作系统的网络安全。
为解决上述技术问题,本发明的实施例提供技术方案如下
一种计算机,包括
硬件平台;
物理网卡,安装在所述硬件平台上; 虚拟机管理器,安装在所述硬件平台上;
第一操作系统,安装在所述虚拟机管理器上,与所述物理网卡连接,通过 所述物理网卡,所述第 一操作系统与外部网络间可实现相互传输第 一 网络包;
网络过滤驱动模块,与所述物理网卡连接,用于对经过所述网络过滤驱动 模块的网络包进行处理;
第二搡作系统,安装在所述虚拟机管理器上,具有所述虚拟机管理器为其 分配的第二虚拟网卡,通过所述第二虚拟网卡、所述网络过滤驱动模块及所述 物理网卡,所述第二操作系统与所述外部网络间可实现相互传输第二网络包, 所述网络过滤驱动模块对所述第二网络包进行处理。
优选的,所述网络过滤驱动模块和所述物理网卡安装在所述第一操作系统 中,所述网络过滤驱动模块包括
过滤模块,用于对所述第二网络包进行过滤,获得第三网络包;
转发模块,用于转发所述第三网络包。
优选的,所述计算机还包括
一安全通道,设置在所述虚拟机管理器中,所述安全通道连接在所述网络 过滤驱动模块和所述第二虚拟网卡之间,用于传输在所述网络过滤驱动模块和所述第二虛拟网卡间的网络包。
优选的,所述计算机还包括
安全协议模块,用于安装安全协议,并与所述安全通道连接,所述安全通 道在所述安全协议的控制下进行网络包的传输。
优选的,所述安全协议为可信平台模块规范中的独立对象授权协议或者 特定对象授权协议。
优选的,所述第一操作系统包括
监视器,与所述网络过滤驱动模块连接,用于对所述网络过滤驱动模块进 行网络配置,并监视当前是否有动态调试器存在,若监视到有,则向所述网络 过滤驱动模块发出停止工作的命令,所述网络过滤驱动模块接收到该命令后, 立即停止当前的工作。
优选的,所述网络过滤驱动模块和所述物理网卡安装在所述虚拟机管理器 中,所述第一操作系统还包括由所述虚拟机管理器分配的且与所述网络过滤 驱动模块连接的第一虚拟网卡,所述网络过滤驱动模块将过滤后的所述第一操 作系统经由所述第 一虚拟网卡向所述外部网络发出的所述第 一网络包通过所 述物理网卡发送出去,或者通过所述物理网卡将从所述外部网络接收的所述第 一网络包转发给所述第 一虛拟网卡。
优选的,所述网络过滤驱动模块具体为能通过加壳手段防止黑客的静态 逆向工程的静态破解的模块。
为解决上述技术问题,本发明的实施例还提供一种虚拟机环境中实现网络 隔离的方法,所述方法包括如下步骤
接收来自第一4喿作系统的第一网络包;对所述第一网络包进行过滤处理, 获得第四网络包;
将所述第四网络包通过仅包括物理网卡的第 一数据通道发送至外部网络; 接收来自第二操作系统且经由第二虚拟网卡和一安全通道传输来的第二 网络包;
对所述第二网络包进行过滤处理,获得第三网络包; 将所述第三网络包通过包括所述物理网卡的第二数据通道发送至所述外部网络。
优选的,所述接收来自第二操作系统且经由第二虚拟网卡和一安全通道传
输来的第二网络包的步骤具体为
所述第二操作系统将发往所述外部网络的所述第二网络包经由第二虚拟 网卡发送给所述安全通道,
所述安全通道在安全协议的控制下对所述第二网络包进行传输。
优选的,所述安全协议为可信平台模块规范中的独立对象授权协议或者 特定对象授权协议。
优选的,所述进行过滤处理步骤具体为
通过加壳手段防止黑客的静态逆向工程的静态破解来对网络包进行过滤 处理。
本发明的实施例具有以下有益效果
上述技术方案通过虚拟环境中的单向网络过滤驱动的网络方案,即Host OS 与Guest OS都可以通过网络访问外网(比如Internet ),但Host OS与Guest OS 不能利用网络进行互相访问(即Host OS不能ping通Guest OS, Guest OS也 不能ping通Host OS ),完全隔离Host OS与Guest OS之间的网络,Guest OS 不会因为Host OS被入侵而受到安全威胁。


图1为现有的虚拟环境下计算机的网络连接结构图2为现有的虚拟环境下计算机的另一种网络连接结构图3为本发明的实施例计算机针对图2所示的网络连接结构改进后的图4为图3所示的计算机的一具体实施例结构图5为本发明的实施例计算机针对图1所示的网络连接结构改进后的图6为本发明的实施例虚拟机环境下网络隔离的方法的流程示意图。
具体实施例方式
为使本发明的实施例要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明的实施例针对现有技术中虚拟机系统环境中,客户操作系统的安全 受到威胁的问题,提供一种计算机以及虚拟机环境中实现网络隔离的方法。
如图3所示,本发明的实施例计算机包括硬件平台;物理网卡,安装在 硬件平台上;虚拟^/L管理器,安装在硬件平台上;第一操作系统,安装在该虚 拟机管理器上,与物理网卡连接,通过物理网卡,第一操作系统与外部网络间 可实现相互传输第一网络包;网络过滤驱动模块,与物理网卡连接,用于对经 过网络过滤驱动模块的网络包进行处理;第二操作系统,安装在该虚拟机管理 器上,具有该虛拟^/L管理器为其分配的第二虚拟网卡,通过该第二虚拟网卡、 网络过滤驱动模块及物理网卡,第二操作系统与外部网络间可实现相互传输第 二网络包,网络过滤驱动模块对第二网络包进行处理。这里的硬件平台包括物 理网卡,物理硬盘,物理内存等硬件设备。
这里的虚拟机管理器可以如VMWARE, XEN环境的hypervisor等,主要 是为安装在计算机上的操作系统虚拟出若千个操作系统,并为这些操作系统提 供虚拟硬件的分配和管理。这里的第一操作系统可以为主操作系统(Host OS ), 也可以为客户操作系统(Guest OS),即被虚拟出来的操作系统,如果为主操 作系统,则该操作系统可以对底层的物理硬件设备直接进行访问,而为客户操 作系统时,只能对虚拟机管理器为其分配的虚拟硬件进行访问;当然第二操作 系统也可以为主操作系统,也可以为客户操作系统,但同时在一个计算机系统 中,只能有一个HostOS,可以有多个Guest OS。
为方便描述,以下以第一操作系统为主操作系统,第二操作系统为客户操 作系统进行举例描述本发明的实施例。
这里的网络过滤驱动模块可以为如NAT模块,passthru模块等,其作用是 过滤和转发操作系统与外部网络(如Internet)收发的网络包,以使计算机的 网络环境更加安全。
再如图3所示,在本发明的一个实施例中,上述网络过滤驱动模块以及物 理网卡安装在第一操作系统中(如Host OS),在该操作系统中,该网络过滤 驱动模块与物理网卡连接;该网络过滤驱动模块包括过滤模块,用于对上述
9第二操作系统与外部网络传输的第二网络包进行过滤,获得第三网络包;转发 模块,用于转发该第三网络包。具体讲,该网络过滤驱动模块中的转发模块将
过滤后的第二操作系统(如Guest OS)向外部网络发出的网络包通过该物理 网卡发送出去,或者通过物理网卡将从外部网络接收的网络包转发给第二操作 系统的第二虚拟网卡。
在该实施例中,为了进一步提高网络转发的安全性,计算机的虚拟机管理 器中还包括一安全通道,该安全通道连接在上述网络过滤驱动;f莫块和第二虚拟 网卡之间,用于传输网络过滤驱动模块过滤后的第二操作系统向外部网络发出 的网络包或从外部网络接收的网络包。
在该方案中,第一操作系统由于没有虚拟网卡,只能通过物理网卡访问外 网,不能访问第二操作系统中的第二虚拟网卡,这样第一才喿作系统就完全不能 通过网络访问第二操作系统;
当第二操作系统需要访问外部网络时,第二虚拟网卡将所有数据通过安全 通道转发到NAT模块,NAT模块将数据通过物理网卡发送到外部网络,因此 该第二操作系统得以访问外部网络,同时由于第一操作系统没有虚拟网卡,第 二操作系统同无法通过网络访问第一操作系统,实现网络完全隔离,完全杜绝 了第一操作系统对第二操作系统的安全隐患,同时这种方案中,第一操作系统 能直接访问物理网卡,拥有较高的网络效率。
另外,在上述实施例中,虚拟机管理器中还包括一安全协议模块,用于安 装安全协议,并与安全通道进行绑定连接,安全通道在安全协议的控制下进行 网络包的传输。这里的安全协议可以为可信平台模块规范(TCG)中的独立 对象授权协议(OSAP)或者特定对象授权协议(OIAP),保证该安全通道不 被例如重放攻击、中间人攻击等手段攻击。
另夕卜,在上述实施例中,由于网络过滤驱动模块拥有第二操作系统的所有 网络连接,也有安全通道的连接方式,黑客可以用动态调试(Windbg等工具) 或者静态逆向工程(IDA等工具)威胁安全通道的安全,进而达到攻击第二操 作系统的目的。
这时,针对黑客采用动态调试工具威胁网络过滤驱动模块的安全,如图4
10所示,在第一操作系统还可安装一监视器,与网络过滤驱动模块连接,用于对 网络过滤驱动模块进行网络配置,并监视当前是否有动态调试器存在,若监视 到有,则向网络过滤驱动模块发出停止工作的命令,网络过滤驱动模块接收到 该命令后,立即停止当前的工作。这样网络过滤驱动模块停止被动态调试破解,
黑客也就无从截取第二操作系统对外部网络收发的网络包了 ;
针对黑客采用静态逆向工程工具威胁网络过滤驱动模块的安全,该网络过 滤驱动模块可以通过加壳手段防止逆向工程的静态破解。
在该实施例中,通常第一操作系统的防火墙安装在网络过滤驱动模块的上 面,因此第一操作系统的防火墙配置对该网络过滤驱动模块不起作用,第二操 作系统可以直接连接到外部网络而不需要知道第一操作系统的存在,因此,第 一操作系统和第二操作系统采用如上的网络安装结构是完全隔离的,保证了第 二操作系统的安全。
如图5所示,在本发明的另一个实施例中, >硬件平台的物理网卡还可以安 装在虚拟机管理器中,该虚拟机管理器通过访问该物理网卡,与该外部网络进 行第 一操作系统和第二操作系统的网络包的收发。这里的第 一操作系统可以为 Host OS,也可以为Guest OS;第二操作系统也可以为Host OS,也可以为Guest OS,但同时在一个计算机系统中,只有一个是HostOS,可以有多个GuestOS。
上述网络过滤驱动模块(如NAT模块)也安装在虚拟机管理器中,并与 物理网卡连接;在该实施例中,第一操作系统也具有虚拟机管理器为其分配的 第一虚拟网卡,该第一虚拟网卡与该网络过滤驱动模块连接;网络过滤驱动模 块将过滤后的第 一操作系统经由第 一虚拟网卡向外部网络发出的第 一 网络包 通过物理网卡发送出去,或者通过物理网卡将从外部网络接收的第 一 网络包转 发给第一虚拟网卡。
另外,在本实施例中,虚拟机管理器也可包括一监视器,与网络过滤驱动 模块连接,用于对网络过滤驱动模块进行网络配置,并监视当前是否有动态调 试器存在,若监视到有,则向网络过滤驱动模块发出停止工作的命令,该网络 过滤驱动模块接收到该命令后,立即停止当前的工作。这样网络过滤驱动模块 停止被动态调试破解,黑客也就无从截取第一操作系统或第二操作系统对外部网络收发的网络包了 ;该网络过滤驱动模块还可通过加壳手段防止黑客的静态 逆向工程的静态破解,来进一步保证网络的安全。
在本实施例中,第一操作系统虽然具有第一虚拟网卡,但该第一虚拟网卡 并没有与第二操作系统中的第二虚拟网卡直接连接,而是通过NAT模块分别 与外部网络连接,通过该NAT模块实现对外部网络的访问,保证了第二操作 系统对外部网络访问的数据的安全性;即使第一操作系统与第二操作系统能够 通过NAT模块互相访问,由于NAT的过滤功能,二者之间的访问数据也是安 全的,而且为了进一步提高安全性,在虚拟机管理器中还安装有防火墙,但该 防火墙安装在网络过滤驱动模块的上面,避免对其他操作系统的影响。
另夕卜,如图6所示,本发明的实施例还提供一种虚拟机环境下网络隔离的 方法,包括如下步骤
步骤S61,接收来自第一操作系统的第一网络包,对该第一网络包进行过 滤处理,获得第四网络包;
步骤S62,将该第四网络包通过仅包括物理网卡的第一数据通道发送至外 部网络;
步骤S63 ,接收来自第二操作系统且经由第二虚拟网卡和一安全通道传输
来的第二网络包;
步骤S64,对该第二网络包进行过滤处理,获得第三网络包;
步骤S65,将该第三网络包通过包括该物理网卡的第二数据通道发送至外
部网络。
其中,上述步骤S63具体为第二操作系统将发往外部网络的第二网络包 经由第二虚拟网卡发送给安全通道;该安全通道在安全协议的控制下对第二网 络包进行传输;即,第二操作系统的第二网络包由第二虚拟网卡发送至安全通 道,由安全通道将该第二网络包传输至第 一操作系统中的网络过滤驱动模块, 由该网络过滤驱动模块将该网络包通过物理网卡发送至外部网络,当从外部网 络接收网络包时,流程相反,即通过物理网卡接到收网络包后,交由第一操作 系统中的网络过滤驱动;f莫块进行过滤,然后转发至安全通道,由安全通道转发 给第二操作系统的第二虚拟网卡。这里的安全协议为可信平台模块规范中的独立对象授权协议或者特定对象授权协议。
上述步骤S61中,对该第一网络包进行过滤处理的步骤具体为通过加壳 手段防止黑客的静态逆向工程的静态破解来对第一网络包进行过滤处理。
上述步骤S64中,对该第二网络包进行过滤处理的步骤具体为通过加壳 手段防止黑客的静态逆向工程的静态破解来对第二网络包进行过滤处理。
上述方法的实施例同样由于第二操作系统对外部网络的网络包通过第二 虚拟网卡、网络过滤驱动模块以及物理网卡转发出去;第一操作系统对外部网 络的网络包通过第一虚拟网卡、网络过滤驱动模块以及物理网卡转发出去;而 第一操作系统与第二操作系统没有直接通过虛拟网卡相互连接,因此实现了第 一操作系统和第二操作系统的网络隔离,保证了第二才喿作系统的安全。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技 术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰, 这些改进和润饰也应视为本发明的保护范围。
1权利要求
1.一种计算机,包括硬件平台;物理网卡,安装在所述硬件平台上;虚拟机管理器,安装在所述硬件平台上;第一操作系统,安装在所述虚拟机管理器上,与所述物理网卡连接,通过所述物理网卡,所述第一操作系统与外部网络间可实现相互传输第一网络包;网络过滤驱动模块,与所述物理网卡连接,用于对经过所述网络过滤驱动模块的网络包进行处理;第二操作系统,安装在所述虚拟机管理器上,具有所述虚拟机管理器为其分配的第二虚拟网卡,通过所述第二虚拟网卡、所述网络过滤驱动模块及所述物理网卡,所述第二操作系统与所述外部网络间可实现相互传输第二网络包,所述网络过滤驱动模块对所述第二网络包进行处理。
2. 根据权利要求1所述的计算机,其特征在于,所述网络过滤驱动模块 和所述物理网卡安装在所述第 一操作系统中,所述网络过滤驱动模块包括过滤模块,用于对所述第二网络包进行过滤,获得第三网络包; 转发模块,用于转发所述第三网络包。
3. 根据权利要求2所述的计算机,其特征在于,所述计算机还包括 一安全通道,设置在所述虚拟机管理器中,所述安全通道连接在所述网络过滤驱动模块和所述第二虚拟网卡之间,用于传输在所述网络过滤驱动模块和 所述第二虚拟网卡间的网络包。
4. 根据权利要求3所述的计算机,其特征在于,所述计算机还包括 安全协议模块,用于安装安全协议,并与所述安全通道连接,所述安全通道在所述安全协议的控制下进行网络包的传输。
5. 根据权利要求4所述的计算机,其特征在于,所述安全协议为可信 平台模块规范中的独立对象授权协议或者特定对象授权协议。
6. 根据权利要求5所述的计算机,其特征在于,所述第一操作系统包括监视器,与所述网络过滤驱动模块连接,用于对所述网络过滤驱动模块进 行网络配置,并监视当前是否有动态调试器存在,若监视到有,则向所述网络 过滤驱动模块发出停止工作的命令,所述网络过滤驱动模块接收到该命令后, 立即停止当前的工作。
7. 根据权利要求1所述的计算机,其特征在于,所述网络过滤驱动模块 和所述物理网卡安装在所述虚拟机管理器中,所述第一操作系统还包括由所述虚拟机管理器分配的且与所述网络过滤驱动模块连接的第一虚拟 网卡,所述网络过滤驱动才莫块将过滤后的所述第 一操作系统经由所述第 一虚拟 网卡向所述外部网络发出的所述第 一 网络包通过所述物理网卡发送出去,或者 通过所述物理网卡将从所述外部网络接收的所述第 一 网络包转发给所述第一 虛拟网卡。
8. 根据权利要求1至7中任一项所述的计算机,其特征在于,所述网络 过滤驱动模块具体为能通过加壳手段防止黑客的静态逆向工程的静态破解的 模块。
9. 一种虚拟机环境中实现网络隔离的方法,其特征在于,所述方法包括 如下步骤接收来自第一操作系统的第一网络包;对所述第一网络包进行过滤处理, 获得第四网络包;将所述第四网络包通过仅包括物理网卡的第 一数据通道发送至外部网络; 接收来自第二^l喿作系统且经由第二虚拟网卡和一安全通道传输来的第二 网络包;对所述第二网络包进行过滤处理,获得第三网络包; 将所述第三网络包通过包括所述物理网卡的第二数据通道发送至所述外 部网络。
10. 根据权利要求9所述的方法,其特征在于,所述接收来自第二操作系 统且经由第二虚拟网卡和一安全通道传输来的第二网络包的步骤具体为所述第二操作系统将发往所述外部网络的所述第二网络包经由第二虚拟 网卡发送给所述安全通道;所述安全通道在安全协议的控制下对所述第二网络包进行传输。
11. 根据权利要求10所述的方法,其特征在于,所述安全协议为可信 平台模块规范中的独立对象授权协议或者特定对象授权协议。
12. 根据权利要求9所述的方法,其特征在于,所述进行过滤处理步骤具 体为通过加壳手段防止黑客的静态逆向工程的静态破解来对网络包进行过滤 处理。
全文摘要
本发明提供一种计算机以及虚拟机环境中实现网络隔离的方法,计算机包括硬件平台;物理网卡;虚拟机管理器;第一操作系统,安装在虚拟机管理器上,与所述物理网卡连接,通过所述物理网卡,所述第一操作系统与外部网络间可实现相互传输第一网络包;网络过滤驱动模块,与所述物理网卡连接,用于对经过所述网络过滤驱动模块的网络包进行处理;第二操作系统,安装在虚拟机管理器上,具有所述虚拟机管理器为其分配的第二虚拟网卡,通过所述第二虚拟网卡、所述网络过滤驱动模块及所述物理网卡,所述第二操作系统与所述外部网络间可实现相互传输第二网络包,所述网络过滤驱动模块对所述第二网络包进行处理。本发明保证了第二操作系统的网络安全。
文档编号H04L29/06GK101645873SQ20081011821
公开日2010年2月10日 申请日期2008年8月7日 优先权日2008年8月7日
发明者俊 仇, 冯荣峰, 洋 林, 军 陈 申请人:联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1