迁移之后-云安全的不断优化

作者:崔远智    2016.6.27

伴随着近些年云计算大潮的冲击和洗礼,以及大家对云的不断了解和接受,更多的应用和系统被逐渐的迁移并部署到了云端。迁移之后,云端的高可用性、弹性、高度的易用性等特点,都给用户带来了更多的方便和实惠。随之而来的,更多的安全问题,也不可避免的呈现在了我们的面前。那么今天,我们就针对云端的安全问题,做一些实践性的建议讨论。

对云安全的理解

其实不同的人群,对云安全的理解是千差万别的。从云的服务提供商(IaaS、PaaS、SaaA)、终端用户到运维服务商、等等,他们眼中的云安全和对于云安全的关注点,甚至可能是大相径庭的。

对于云的终端用户而言,尤其是IaaS用户,云安全的关注点,其实更多的是在强调如何保证客户的云上应用系统和服务的安全性。

为了实现这个目标,需要从底至上的安全支撑,主要包括:基础设施物理安全 > 平台安全 > 应用安全 > 数据安全,等。

通用云安全体系介绍

如下图所示,通用的安全体系一般可以划分为7层,包括:设备安全、网络安全、系统安全、平台安全、应用安全、数据安全、信息安全。

在这个七层安全体系里,不同角色的人群在其中起到的作用和对于安全的关注点,是截然不同的。

云服务提供商需考虑的安全问题

作为云服务提供商,提供了云服务所需的物理硬件、场地、安全设备等基础设施,同时也提供了云平台和运营运维等在这之上的软件和服务。所以,他们一般需要考虑的云安全问题主要包括:

(1)平台层以下(包括平台层本身)的安全性,是云服务提供商需要着重处理和保障的。

(2)物理安全和网络安全,是云服务提供商需要首先考虑的两大主要因素,实现包括:物理设备隔离、网络隔离、分区规划、电力保障、DDosS防御、入侵检测、访问控制、流量控制(东西向+南北向)、等。

(3)系统安全主要包括主机层面的接入安全、密钥管理、补丁升级、漏洞防护、帐号管理、等。

(4)平台安全主要涉及平台本身的设计层面是否充分考虑了安全因素、是否通过了比较严格的安全性测试和认证、是否能够提供客户需要的安全服务、等。

(5)此外,云服务提供商是否配备专门的安全团队,来保障其安全性,也是一个非常重要的考虑因素。

作为终端用户,在选择云服务提供商的时候,需要重点考察和衡量其安全性,择优选用安全级别更高的云服务。这也是对于您云端应用和服务最基础保障的选择。

用户自身需保障的安全问题

(1)作为终端用户,首先需要充分利用云服务提供商提供的安全服务,保障自己应用系统或服务的安全。这些安全服务主要包括:IAM、MFA、安全组、防火墙、密钥对、VPN、审计日志、等。

(2)同时,用户需要利用云服务资源的一些特性,合理设计和部署,保护自己应用系统或服务的安全。常用的主要可以利用的资源特性包括:自定义网络拓扑结构和访问控制、弹性公网IP和自定义路由策略、等。

(3)应用系统或服务本身的安全设计,从本质上讲是与上云与否没有直接关系的。从任何角度看,即使不上云,这也是用户自身需要周全考虑和实现的,保障应用系统或服务本身不存在安全问题或漏洞。

(4)数据安全和信息安全策略也是同样道理,类似密码密钥的管理规范,数据使用和保存的规范,不管上不上云,都是用户自身需要充分保障的。

IAM与MFA

(1)IAM (Identity and Access Management) 是一种 Web 服务,可帮助您安全地控制用户对云端资源的访问权限。通过 IAM 可以控制哪些人可以使用您的云端资源(身份验证)以及他们可以使用的资源和采用的方式(授权)。

(2)MFA (Multi-Factor Authentication) 是一种非常简便的最佳实践方法,它能够在用户名称和密码之外再额外增加一层保护。启用 MFA 后,用户登录云服务网站时,系统将要求他们输入用户名和密码(第一安全要素 – 用户已知),以及来自其 MFA 设备的身份验证代码(第二安全要素 – 用户已有)。这些多重要素结合起来将为您的云服务账户设置和资源提供更高的安全保护。

(3)现在的云服务提供商,多数都已支持或部分支持了IAM和MFA。

(4)如果想了解更多,关于IAM,您可以参考AWS的官方文档“AWS Identity and Access Management”;关于MFA,可以参考AWS的官方文档“Multi-Factor Authentication”。

云端网络设计和安全隔离

在使用IaaS云服务的时候,终端用户可以利用一些IaaS的基础特性,通过一些部署结构的设计和编排,提升安全级别。

(1)使用云的最大好处之一,就是可以根据用户自己的需要,完全自定义二层网络,也就是我们常说的SDN。

(2)用户可以把不同的应用系统或服务部署在不同的网络中,通过设置路由策略等方式,实现访问控制、隔离、等。

(3)配合防火墙、安全组等安全服务,则可以更加容易的实现内外网隔离和访问控制。

善用IaaS基本安全服务之-Security Group

安全组,翻译成英文是 security group,是一些规则的集合,用来对虚拟机的访问流量加以限制。可以定义n个安全组,每个安全组可以有n个规则(规则本身可以是其它安全组),可以给每个实例绑定n个安全组。云服务提供商一般总会提供一个default安全组,这个通常是不能被删除的。创建实例的时候,如果不指定安全组,会默认使用这个default安全组。安全组在功能上,跟防火墙十分类似,但实质上又有所不同。

(1)典型的安全组使用场景如下图所示。

(2)用户可以根据需要设置按安全组、源目的IP、源目的端口、内外网访问等条件进行访问控制。

(3)要了解更多关于安全组的介绍,您可以参考AWS的官方文档“Amazon EC2 安全组”;或者也可以参考阿里云的文档“利用资源编排服务-创建安全组(SecurityGroup)访问规则”。

善用IaaS基本安全服务之-Firewall As A Service

熟悉防火墙的都知道,防火墙一般放在网关上,用来隔离子网之间的访问。一个可能混淆的概念是安全组(Security Group),安全组的作用对象是虚拟机,通过配置规则来限制虚拟网卡的进出访问。防火墙可以在安全组之前隔离外部过来的恶意流量,但是对于同个子网内部不同虚拟网卡间的通讯不能过滤(除非它要跨子网)。作为用户,可以同时部署防火墙和安全组实现双重防护。

(1)以常见的OpenStack体系为例,防火墙使用场景如下图所示。

(2)用户开启防火墙服务以后,防火墙就成为了服务的必经入口,用户可以按照源目的IP、源目的端口等条件,像使用标准物理防火墙一样进行访问控制。

借力IaaS高级安全服务之-DDoS防护

DoS(Denial of Service,拒绝服务)攻击通过某些手段使得被攻击的目标系统或者网络不能提供正常的服务。具体手段可以是对一个攻击对象的资源(带宽资源或系统资源)耗尽式攻击;或者利用程序实现上的缺陷导致对异常行为处理不正确。

DDoS(Distributed Denial of Service,分布式拒绝服务)攻击是指多台主机合作同时向一个目标发起DoS攻击。DDoS攻击过程中,攻击者使用的主机并不直接发起攻击,所以不会受到检测和跟踪,身份也较难发现。

(1)现在,一般的云服务提供商,都会在网络出口处架设DDoS防护设备。

(2)DDoS设备根据DDoS策略中的学习规则发现流量,生成检测规则。而后,根据检测规则进行异常流量检测,并在检测到异常流量时生成过滤规则,阻止异常流量通过设备。

(3)用户可以通过购买DDoS防护服务(如阿里的“高防IP”),有效的保护自身应用系统或服务。

(4)想了解更多关于DDoS的信息,您可以参考H3C“关于DDoS”的文档介绍;或阿里的“一分钟了解阿里云产品:DDoS高防IP概述”。

借力IaaS高级安全服务之-WAF防护

(1)WAF是Web Application Firewall的缩写,中文可以翻译成:网站应用防护系统。通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护。

(2)WAF的工作原理可参考下方示意图,和DDoS防护很像。

(3)未来,针对软件定义WAF与分布式WAF技术,我想我们会做出更多的思考和探索。

(4)想了解更多关于WAF的信息,您可以参考AWS的文档“AWS WAF – Web 应用程序防火墙”的介绍。

善用审计日志

(1)审计日志,就不用多说了,它记录了用户账户下全部账号的所有详细操作记录。

(2)当需要追溯问题或查找详细操作信息时,它就非常重要了。

严格密钥管理

(1)密钥匙用户访问资源的钥匙。

(2)对于不同的资源和用户,建议分配不同的密钥,分开管理。

(3)对密钥做到严格的管理和控制,能够有效的防止很多内部安全问题的发生。

其它安全手段和措施

(1)关闭一切不必要端口。

(2)开通VPN,只通过VPN访问方式管理资源。

(3)Web应用开启Https。

(4)用户与权限的严格管理,通过用户组来映射角色和权限。

… …


关于作者

崔远智,现任东网科技有限公司云计算负责人。主要从事云计算基础服务和应用领域的研究、开发工作,研究方向主要包括主机虚拟化技术、分布式存储技术、软件定义网络技术、容器技术、等。曾从事多年国内解决方案软件和欧美国际软件外包业务并赴美工作。发表过“基于实时控制的多路温度监测系统[J]”的学术论文,等。


<<返回主页