虚拟化 频道

保护Windows 2008的虚拟化环境

  【IT168 资讯】其实保护虚拟机上的操作系统同保护物理计算机上的操作系统相似,但是当保护虚拟机时,有两个重要方面需要考虑。其一是虚拟机共享硬件资源(如网卡),而这可能带来某些安全风险。其二是虚拟机的配置、磁盘、BlOS甚至内存,因为它们都是以文件形式存在,可能会暴露在主机上。下面笔者从三个方面来进行阐述。

  1、基于角色和权限的安全设置

  保护配置为Hyper-V角色的Windows Server 2008尤为重要,因为每个来宾操作系统的安全性取决于主机服务器的安全性。奇怪的是Server 2008 安全指南(Security Guide)并没有涉及Hyper-V角色的内容,安全设置向导(SCW)也是如此。

  (1).以Server Core运行Hyper-V角色

  安全期间,笔者建议在Windows Server 2008的内核版本Server Core系统中运行Hyper-V角色。Server Core是最小限度的Windows安装,缺少Windows Explorer外壳、对话框、应用程序以及很多服务(而这些会增加开销并可能会增大攻击面)。内容越少,可供攻击的地方就越少,需要打补丁的文件就越少,这样服务器重启的次数就越少。如果你觉得没有图形界面工具运行Server Core有些不便的话,我们可以通过另一台有图形界面工具的计算机远程管理该服务器。(图1)

  

  减小攻击面是保护操作系统的关键,所以最好在服务器指定单独一个虚拟化角色,而且不要在上面安装额外的软件或服务。这个非常好的策略的一个例外情况是,Hyper-V主机是使用入侵检测系统(IDS)的较好位置。由于所有来宾的网络通讯都通过主机的网卡,所以在主机上安装一个IDS检测器就可以监控所有的来宾操作系统。

  (2).精细的权限控制

  我们知道,来宾计算机对于主机服务器上的用户来说是特别脆弱的。因此,谨慎考虑用户的访问权限是很重要的。控制用户访问权限的最简单的方法是只允许少量用户在本地或通过Terminal Services来访问系统。我们可以使用组策略来决定哪些用户可以在本地登录服务器。要这样做,打开“本地安全策略”控制台,展开“本地策略”,并选择“用户权限分配”。在右边窗格中双击“允许在本地登录”策略,默认情况下用户可以Users组可以从本地登录。接下来,选中Users并单击“删除”。我们从这里可以指定哪些用户或用户组能够登录到系统。(图2)

  

  一旦我们决定了哪些用户能够本地登录系统,就可以使用“授权管理器”来进一步确定用户访问虚拟机的方式。在“开始”菜单的搜索框中输入azman.msc,打开“授权管理器”控制台。从“操作”莱单选择“打开授权存储”。当“打开授权存储”对话框出现时, 选择XML file并找到服务器上的“C:\PogramData\Microsoft\Windows\Hyper-V\initialStore.xml”文件(默认情况下ProgramData目录是隐藏的,需要手工输入该文件的路径)。当加载了授权存储,展开“InitialStore.xml”→“Microsoft Hyper-V Services”→“定义”,然后是“规则定义”。在右侧的窗格中双击User,然后选择“定义”属性页。我们可以在这里增加或删除用户能够执行的操作。(图3)

  

  从开发角度来说,Hyper-V以其出众的可编程性以及通过Windows管理规范(WMI)进行控制的能力超越了很多虚拟化产品。但是,这种可编程性允许以来宾操作系统难以预料的方式来控制它,因此,未授权用户有可能会绕开来宾操作系统中的安全控制。因为WMI处理自动化界面,所以我们可以使用WMI权限限制通过WMI对Hyper-V的访问。只需在开始菜单的搜索框里输入wmimgmt.msc并按回车键即可。然后,右键单击“WMI控制(本地)”并选择“属性”。选择“安全”属性页并展开“Root”→“Virtualization”,选中ms_409。点击“安全设置”按钮,可以进行精细的用户权限调整。(图4)

  

0
相关文章