【博文推荐】云计算安全解决方案白皮书(一)

安全 云安全
云计算的安全问题之所以突出,是因为虚拟机的动态迁移,以及多业务系统交织在一起,这让传统的网卡边界就是安全部署点的方法不在适用。流安全不再关注被保护服务器的物理位置,转而关注访问该服务器的数据流。通过对数据流的重新“路由”,保证对数据流的安全清洗,从而实现对服务器的网络保护。在访问控制模型中,有一类流模型,就是针对数据流进行保护的。
本博文出自51CTO博客之星Jack zhai的博客,有任何问题请进入博主页面互动讨论!

博文地址:http://maomaostyle.blog.51cto.com/2220531/1654994

研究云的安全有两三年了,但形成完整的安全思路,还是去年的事,这也是“流安全”思路形成的主要阶段。

云计算的安全问题之所以突出,是因为虚拟机的动态迁移,以及多业务系统交织在一起,这让传统的网卡边界就是安全部署点的方法不在适用。流安全不再关注被保护服务器的物理位置,转而关注访问该服务器的数据流。通过对数据流的重新“路由”,保证对数据流的安全清洗,从而实现对服务器的网络保护。在访问控制模型中,有一类流模型,就是针对数据流进行保护的。

为了让大家容易理解基于流安全的云计算安全方案,我编写了这个白皮书,与大家交流。文档挺长,特分成四个部分。

本方案适用范围:

云计算建设一般分为公有云与私有云,其安全需求是不同,安全防护思路也不相同。

公有云以阿里云、腾讯云等互联网运营商为代表,独立建设云服务为企业、个人提供云服务。选用这种云服务的用户,多数是对敏感性要求不高的,主要的便宜、快捷。同时,云服务提供商为了降低运营成本,大多采用在开源虚拟化平台上进行二次开发,不仅整个架构平台可以自己重新架构,而且可以增加自己对虚拟机的安全管理,如流量限制,内置安全软件进行安全监控,或者直接进行病毒查杀等等。总之,公有云的安全基本上是由云服务商来管理,用户可以根据自己的需要选择,若是有些敏感的信息,可以选择桌面的加密软件。

私有云的情况则不同,因为私有云的建设者,大多数技术力量不是很强,没有自行开发、运维虚拟化平台的能力,选择采用第三方的、较为成熟的云计算管理平台是常见的,用户则更关心自己的新业务开发。采用私有云方式的用户,一般其IT设施较多,业务对网络要求较高,多数有自己的城域网,有些还有专用的广域网,在安全上一般应该满足等级保护的国家要求。为了提高IT设备的利用率,加强对业务支持的灵活性,选用资源虚拟化管理,或者之间迁移到云服务平台。如政府、军队、央企、科研机构等,

本文主要是针对私有云,并且是在一个虚拟化池中不只是运行一种业务的场景,提出的云计算安全解决方案设计思路,不仅适合针对每个业务系统提供单独安全保障的需求,而且适合不同虚拟化管理平台的统一安全管理。

一、云计算其实是所有软件人的“梦”

1、云计算是一种新的IT服务模式体验

能够不受计算机处理能力的限制,能够有取之不尽的内存与外存空间,这对于每一个软件编程人员来说,无疑具有巨大的诱惑力。为了提高处理速度而绞尽脑汁设计的精巧算法,为了节省内存而反复优化的代码…而真正实现业务系统的逻辑、管理往往沦为“不重要的”。以至于很多人认为:计算机编程高手就意味着精于编程技巧,而应用系统开发只是软件工程,我们常说的“码农”。

云计算技术的出现让这个问题成为历史,增加处理能力,就是增加几个CPU,动态添加内存都不再是障碍,甚至已经出现了内存数据库,空间还是问题吗?因为云计算的特点之一是具有弹性的处理能力。

对于计算机的用户,能够随时随地接入主机系统,忙碌的办公室、温馨安逸的家、旅途中的宾馆、休假时的海滨,甚至行驶的汽车上、飞机上、轮船上…随时交流通信、随时编写方案、随时设计蓝图、随时项目审批、随时网上冲浪……云计算让这些梦想变成了可能,因为云计算还有一个显著特点:随时随地接入网络。

当然,得到如此“梦想”的服务,不只是高端富豪才能享用的,就像“自来水”一样,价格便宜,使用多少就付多少钱。可度量的、按需的服务是云计算的另一大特点。

以上是美国NIST定义云计算五大特点中的三个,这已经足够吸引所有计算机人士的眼球的了。因此,2013年还有很多专家称云计算落地还有待时日,到了2014年,政府与企业的IT建设立项不与云沾边的已经很少了,2015年一开始,一窝蜂似的涌出很多的云计算项目要落地实施。其实我们回想一下,这几年,我们身边基于云计算的服务与新应用:即时通信、社交网络、搜索引擎、电子政务、智慧城市、电商购物、影视媒体、大型游戏、安全态势分析、领导决策支持…

2、了解一下云计算的体系结构

云计算是一种新技术,也是一种新型的IT服务模式。你知道吗?支持云计算服务商的后台基础技术其实是资源管理的虚拟化技术。我们先看一下云计算的系统结构:

 

与传统IT架构不同的地方,是在IT基础设施与系统软件(操作系统)之间增加个一个虚拟化管理层,业务系统“看到”到不再是物理服务器,而是虚拟机(VM)。

正是因为对数据中心的IT基础实施采用了虚拟化管理技术,虚拟计算机可以动态调整CPU的个数、内存的大小,所以云计算才能够提供弹性的服务能力。按照用户业务运行的实际需求,动态分配处理能力给每个用户,这就是服务器虚拟化管理的核心之一。当然你需要的服务能力不能超过所有硬件服务器服务能力的总和。

这种虚拟化管理平台软件不同于传统的计算机操作系统,目前比较流行的有:VmWare、KVM、Xen、Hyper-V等,其他管理平台多是在KVM、Xen等开源平台上继续开发出来的。

服务器虚拟化技术的核心是生成与管理虚拟机(VM),不同平台技术上有差异,但大体思路是一致的。我们看一下VMWare平台的虚拟机架构:

 

Xen平台的虚拟机架构类似,但有个0号控制虚拟机:

 

虚拟机最基本的组成是CPU、内存、网卡、磁盘(外存),其他虚拟硬件按需添加,如光驱、软件、USB等。多个虚拟机共享一个物理服务器的硬件资源,对于多用户、多进程的操作系统来说这也不是什么难的事情,但如何将两个虚拟机安全隔离就是管理上关注的事情了。两个应用软件“跑”在一起,还有兼容问题呢,何况是两个虚拟机?用户使用虚拟机,对他来说,应该是一台“独立的”计算机,若他知道还有人与他一起“合租”,邻里关系不能熟视无睹吧。如何做到让用户感觉是跟自己的是一样的呢?

#p#

3、了解虚拟化技术

在一个服务器内实现多个虚拟机共享技术是第一步,要想真正支持弹性服务能力,没有上限的,就一定要突破多台服务器的联合技术,整体的服务能力才有增大。

从早先的双机热备,到服务器集群,再到网格计算,人们在把多台设备虚拟到一起的道路上,探索了很长的一段时间。目前流行的实现服务器虚拟化技术有如下两种模式:

 

云计算安全解决方案白皮书

负载控制+“一虚多”:先建立一个总服务台,进行并行管理。把一个任务分成多个子任务,每个任务申请一个VM,最后处理的结果再返回用户。保证子任务对服务能力的需求不超过单个物理服务器。比如Google、百度的搜索服务,把搜索分成不同类别、资源的子搜索,搜索的时间才会到人满意的程度;

“多虚一”+“一虚多”:把多个物理设备虚拟成一个大的设备,成为一个很大处理能力的“巨型机”,再按需分给每个用户。这是资源虚拟化的理想方式,真正做到了用户申请的VM不受物理服务器的限制,不关心处理能力的承受问题。

不论是哪种虚拟化技术,目的都是在物理硬件与用户需求计算机之间建立一个虚拟层,由这个虚拟管理层负责把用户任务分配给具体的硬件资源,用户“看到的”是虚拟CPU、虚拟内存…既然硬件都是虚拟的,当然其大小就可以由虚拟管理者动态调整。管理虚拟层一方面要管理下层具体的硬件,驱动它们最大效率地工作,一方面要针对每个虚拟机提供出虚拟的硬件接口,让虚拟机的操作系统“正常”调用硬件资源工作。

4、虚拟网络的“诞生”

计算机是通过网卡连接网络与外界互联的,所以,传统的网络边界节点就是网卡,网卡收发的是网络TCP/IP协议的数据包,支持的网络路由交换协议。网卡是服务器与网络互通的必经路径点。连接网卡的网线就是通过网络进入服务器的“唯一”大门(直接到服务器控制端或串口接入控制端,需要接近物理设备,属于物理安全与运维管理范畴,这里不讨论),传统的网络安全措施,部署在网卡的前面,是最佳的防护位置。

 

云计算安全解决方案白皮书

虚拟机(VM)的产生让网络有了不同,每个VM也都有自己的虚拟网卡,这些虚拟网卡需要一个虚拟交换机将他们“连接”起来,再通过上行链路(服务器的物理网卡)连接到外边的网络上。

这个虚拟处理来的交换机,并不是把物理网卡与虚拟网卡简单的分时镜像,因为两个VM之间也会通信,这是的流量就无需到物理网卡去“兜一圈”了,通过虚拟交换机就可以进行“转发”,实际上是物理服务器的内存里搬移个地方,但是虚拟交换机应该与物理交换机一样支持TCP/IP各种交换协议。每个VM都有自己独立的IP地址(可以通过NAT技术对外界只有一个IP)。逻辑网卡的功能与物理网卡应该一样,同样处理TCP/IP的协议栈。

有了虚拟网卡、虚拟交换机,虚拟网络就诞生了。在云计算架构里,网络概念发生了延伸,对网络的理解从传统的网络边界---网卡,延伸到服务器的内部---VM的虚拟网卡。

#p#

5、虚拟机不仅仅是虚拟的

VM与物理计算机,用户使用起来是没有差别的。但管理这看来,是不同的。物理计算机是硬件实物,一般来说服务器的物理位置是固定的,要迁移是很麻烦的(涉及到网络IP的规划与路由设计,这里说的是服务器端,不是终端,可以使用动态IP);VM其实只是一个“文件”,迁移就是一个文件拷贝的操作。因此,采用虚拟化技术最为实惠的一大好处,就是VM可以动态迁移。

 

虚拟机动态迁移为IT管理带来的优势是显而易见的:

没有业务处理时,VM休眠,释放全部的物理资源给其他用户使用;

发现VM运行的服务器能力不足时,可以动态迁移几个VM到其他的物理服务器上,在不中断业务的情况下,动态调整服务能力的供给;

IT系统升级或更新硬件时,先把VM迁移出,升级完后再迁移回来,完全不影响应用服务状态,无需像从前那样,要业务系统退出、数据备份、硬件升级、重装系统、重启业务服务、恢复数据、同步操作等等;

系统容灾变得简单易行。以往是建设备份机房,投资大,平时也用不上;有了动态迁移技术,可以在两地机房建立一体的虚拟化池,在一地出现大灾难时,业务自动将业务VM迁移到另一地的机房服务器中,自动实现系统容灾。近几年,传统设计的两地三中心(同城备份、异地容灾)IT基础架构,已经被“双活”、“多活”数据中心的架构所代替,核心就是采用虚拟化的迁移技术;

快速重启备份系统。业务系统有Bug,系统逻辑宕机,要尽快恢复业务是所有IT管理者都需要的。传统采用双机热备或冷备机方式,重启硬件的时间是不可缺少的。有了虚拟化技术,可以建立不同时间段VM的动态文件镜像,发现宕机,立即启动备份VM,无论是恢复时间,还是最小损失窗口都有大幅度地提升;

VM动态迁移,带来的直接问题,就是IP管理。用户访问服务器是通过URL,再定位到IP地址,所以VM如何迁移,其IP地址应该是不变的。传统数据中心采用三层网络结构(接入、汇聚、核心),不同业务系统划分VLAN进行隔离,保障业务边界安全,VLAN之间的通信是通过三层路由网关转发。现在VM动态迁移,不知道在哪个物理服务器中,甚至到了异地数据中心的服务器里,三层路由在哪里做合适呢?若大家都放在一个二层VLAN里,好像又不安全,广播包太多也是问题。这就是目前很多数据中心采用“大二层”网络架构的原因所在。简单地理解大二层,就是大家可以在一个网段,又可以做一些逻辑域,一个VLAN的设备还在一个广播域,跨设备的VLAN之间建立“通道”,保障它们是一个逻辑的整体。

6、云计算让网络迈向一个新的时代

云计算采用了资源虚拟化,把物理网络从传统的物理网卡,延伸到物理服务器的“内部”,虚拟机的虚拟网卡上。VM的动态迁移,让我们对“设备”的管理,从物理的改变为逻辑的。

一方面,开发者不再关心服务器的处理能力;另一方面,用户也不再关心自己业务服务器在什么地方。传统的网络是七层架构,现在网络层上,“生出”一个“逻辑网络层”,虚拟化了服务器的计算资源,也虚拟化了网络资源。

采用了虚拟化技术,IT管理者已经无法像以前一样把某个业务系统与物理的服务器、存储、网络设备相对应,他们看到的只是某个业务系统访问的信息流,业务系统的虚拟网络拓扑。

传统的网络管理统治时代即将过去,面向对业务信息流的管理时代即将开启。
 

责任编辑:Ophira 来源: 51CTO
相关推荐

2015-06-01 09:53:34

2015-06-01 09:44:08

2015-05-29 09:27:21

2018-10-16 17:23:10

云数据

2018-10-15 23:22:41

互联网

2017-04-06 15:07:30

互联网华为

2017-04-01 14:53:50

华为

2018-10-15 14:57:14

华为

2021-07-20 10:09:07

网络安全数据技术

2010-06-08 09:17:07

2016-12-26 14:56:33

戴尔

2011-08-02 15:19:28

2020-07-21 10:51:08

阿里云云原生

2013-03-19 14:26:00

2010-07-27 17:59:36

CATechnologie云计算

2010-07-27 18:17:39

开源虚拟化云计算

2017-12-17 16:11:20

数字政务云计算大数据
点赞
收藏

51CTO技术栈公众号