前一段时间疯传的勒索病毒“WannaCry”,给了国内很多单位、公司的安全管理当头一棒。其根本原因并不是这个病毒本身多么无坚不摧,更多是由于网络管理人员的疏忽或者用户的侥幸心理。
熟悉网络的朋友或许知道基本安全要从业务与运维两个方面入手,而伴随着虚拟化、SDN等云计算技术的兴起,传统手段虽然也能较大程度地规避安全问题,但往往不能深入云计算内部进行保护。
以WannaCry病毒为例,其基本原理是利用了SMB(Windows文件共享,默认为139、445等端口)服务的一个漏洞(微软3月份已提供此漏洞补丁,且据说作者参考了维基解密“CIA武器库”部分算法),复制并将其传播至被感染机能够接触到的网络环境中其他存在此漏洞的机器。
了解这个机制后,那么在传统网络环境中我们便可进行有效防护,比如最直接地从运维层面禁用445端口或者业务层面禁用SMB服务。比如在这次传播的重灾区——国内校园网,相当数量的教学机器与业务机器都被感染导致无法正常教学,而国内某大学的管理员则在3月份就发现此病毒,快速反应及时隔离被感染机并阻断端口,从而使得该校的教学与生活几乎没有受此病毒影响。
那么问题就来了,由于现在很多网络环境中都部署了基础设施虚拟化软件,比如VMWare ESXi,当运行于其中的虚拟机感染了病毒以后,传统的运维防护措施由于不能够封禁虚拟交换中的流量,导致感染很有可能会非常迅速地传播至其所在的虚拟化网络环境中,如果此时使用的是WorkStation版本而且开启了共享文件夹功能的话,那么事态将会进一步恶化。
针对这种情况,即虚拟化软件不能很好地控制虚拟机之间的通信,且传统网管措施也不能及时或者无法深入虚拟交换以禁止445端口时,就需要引入更加受控的虚拟化网络,比如成熟的SDN/NFV方案,或者传统的代理防护方案。由于代理防护需要在虚拟机中安装额外的代理软件以控制通信,可能会对业务产生影响,因而不会成为主流方案,那么一般情况下我们就还有SDN/NFV可选。SDN/NFV除了给虚拟机提供基础网络服务外,也可以从功能、流量上限制这些通信,比如防火墙、流控、引流等。
而在VMWare软件中,此类解决方案需要单独购买,除价格较高外,往往也需要运维人员较高的网络水平,比较难以在小型http://www.openstack.org/)、ZStack(http://www.zstack.io)等,用户可以以较低成本拥有同样的软件功能。但就OpenSta私有云环境中落地。随着开源社区的技术进步,SDN逐渐在KVM云计算软件中得到成熟应用,比如OpenStack(ck与ZStack的易用性与学习曲线而言,ZStack具有无法比拟的优势。
ZStack(http://www.zstack.io)是国内知名的云计算IaaS产品,由云计算领域深耕十多年的专家打造,提出了私有云简单、健壮、弹性与智能的4S理念,并与阿里云共同推出了混合云解决方案。相比VMWare EXSi,ZStack作为云计算产品具有一个重要特征——多租户,即不同用户之间的网络可以相互隔离。比如在实际使用时,我们可以将不同的应用业务划分至不同租户网络中,再通过端口映射对外提供服务,从而降低单个租户网络感染传播至整个平台的风险。
ZStack除安装部署的简易外,在虚拟网络管理上拥有比VMWare更易用的功能,比如只需在界面上进行简单操作即可立即封禁虚拟机之间指定方向或端口的网络流量。
在即将推出的ZStack 2.0版本中,SDN也会成为NFV之外的增强型虚拟网络解决方案,届时针对类似WannaCry病毒的侵袭便可采用更加智能的引流操作,即控制流表更新下发后,所有网络流量会被清洗后再流通,含有病毒特征的流量会被快速有效隔离,尽可能地减少业务影响。例如现阶段已经有互联网公司在ZStack中集成了onos SDN控制器,在有效管控网络的同时也一定程度地提升了业务能力。
如果再配合定期快照功能,管理人员会在病毒来袭之前就会拥有健康备份,从而在发生意外时快速恢复生产环境。
看了今天的分享之后,希望正在使用传统虚拟化软件的数据中心可以重新评估,是否需要尽快将现有的系统升级到具有更高级网络自动化功能的云计算产品上去。当然,信息系统被病毒感染就像人感冒一样,病好了以后下次就会免疫这种病原体,未尝不是好事儿。以上的安全解决方案也只是私有云环境安全管理的可用措施,我们仍然要养成良好的网管习惯,比如日常漏扫、巡检、更新等。与此同时,我们的虚拟化基础设施也应当向“云”迈进一步,使计算、存储、网络更加智能、高效,从而尽可能使信息基础设施更加稳定、健康。
作者简介:蒋迪,《KVM私有云架构设计与实践》作者,资深虚拟化基础设施工程师,云技术社区专家,ZStack资深售前专家,擅长KVM云平台架构解析与虚拟化POC,具有长期一线开发与交付经验。