内部IaaS部署:管理虚拟机安全
当部署一个内部基础设施即服务(IaaS)云计算时,应当对安全性方面有一个广泛的考虑,即企业不仅必须考虑满足安全性最佳实践的要求,而且同时也应考虑符合监管的要求。
在本文中,我们将具体讨论如何控制虚拟机实例、管理平台、以及支持IaaS实施的网络与存储基础设施。
虚拟机实例
首先,虚拟机(VM)的操作系统和应用程序必须被锁定,并使用现有的规则进行正确配置,如来自于互联网安全中心(CIS)的配置指导准则。正确的虚拟机管理还会产生一些更为健全和一致的配置管理措施。
在虚拟机实例上创建和管理安全配置的关键在于使用模板。管理员为在云计算中初始化所有的虚拟机而创建一个“黄金镜像”是非常明智的做法。他应当为这个模板打好基线并执行严格的修订控制,以确保所有的补丁和其他更新能够及时地得到应用。
很多虚拟化平台为确保虚拟机的安全性都提供了具体的控制措施;企业用户当然应该充分使用好这些功能。例如,VMware公司的虚拟机配置设置会特别地限制虚拟机与底层管理程序之间的复制与粘贴操作,这一限制措施可以有助于防止敏感数据被复制到管理程序的内存和剪贴板。微软公司和Citrix System公司的平台产品可提供类似的限制复制粘贴功能。其他的平台还提供了帮助企业禁用不必要的设备、设置日志记录参数等功能。
此外,当确保虚拟机实例安全性时,请务必根据标准数据分类原则隔离在不同云计算区域运行的虚拟机。由于虚拟机是共享硬件资源的,所以在相同云计算区域内运行虚拟机可能会导致数据在内存中发生冲突,虽然如今这种冲突发生的概率极低。
管理平台
确保虚拟环境安全性的第二个关键在于确保管理平台的安全性,这个管理平台会与虚拟机进行交互,并配置和监控使用中的底层管理程序系统。
这些平台(如VMware的vCenter、Microsoft的系统中心虚拟机管理器(SCVMM)以及Citrix的XenCenter)都配有他们各自可实施的本地安全控制措施。例如,Vcenter常被安装在Windows并继承本地管理员角色而具有系统权限,除非在安装过程中相关的角色和权限被修改。
当谈及管理工具时,确保管理数据库的安全性是最为重要的,但是很多产品的默认设置并不具备内在的安全性。最重要的是,必须在管理平台内为不同的运营角色分配角色和权限。虽然很多企业都拥有一支在IaaS云计算内管理虚拟机运行的虚拟化团队,但是在管理控制台内不授予过多的权限是其中的关键。我建议为存储、网络、系统管理及其它团队授予相关权限,就如同在传统数据中心环境中做的一样。
对于诸如vCloud Director和OpenStack这样的云计算管理工具,应当仔细分配好角色和权限,同时必须包括云计算虚拟机的不同最终用户。例如,开发团队应当拥有用于他们工作任务的虚拟机,这些虚拟机应当与财务团队使用的虚拟机隔离开。
所有的管理工具都应被隔离在一个单独的网段中,而要求通过一个“跳箱”或诸如HyTrust这样的专用安全代理平台访问这些系统是一个好主意,在这样的代理平台上你可以建立强大的认证和集中授权用户监控。
网络和存储基础设施
虽然确保推进IaaS云计算的网络和存储的安全性是一项涉及范围颇广的任务,但还是有着一些应当实施的通用最佳实践。
对于存储环境而言,请谨记,如同其他任何的敏感文件一样,必须保护好虚拟机。某些文件存储有效的内存或内存快照(可能是最敏感的,如可能包含用户凭据和其他敏感数据),而其他的文件代表系统的完整硬盘。在这两种情况下,文件中都包含了敏感数据。在存储环境中使用单独的逻辑单元号(LUNs)和区/域可以隔离不同敏感性的系统,这是至关重要的。如果存储区域网络(SAN)级加密功能可用,请考虑该功能是否适用。
在网络侧,请务必确保单个网段是隔离的,并在虚拟本地局域网(VLAN)和访问控制的控制下。如果在虚拟环境下细粒度安全控制是必须的,那么企业可以考虑使用虚拟防火墙和虚拟入侵检测设备。VMware公司的vCloud平台本身已集成了其vShield虚拟安全设施,而传统网络供应商的其他产品也可用。此外,还应考虑敏感虚拟机数据可能以明文传输的网段,如vMotion网络。在这个VMware环境中,明文内存数据将从一个管理程序传输至另一个,而使敏感数据易于泄漏。
结论
当谈及确保虚拟环境或IaaS私有云计算安全性时,上述三个方面的控制措施只是冰山一角。如需了解更多信息,VMware有一系列深入强化的实用指南以用于评估具体的控制措施,而OpenStack在其网站上提供了一个安全性指南。通过遵循一些基本的做法,企业可以构建他们自己的内部IaaS云计算,并确保它们能够满足他们自己的标准和所有其他必要的行业要求。