一.云基础设施概述
在云计算中,基础设施有两个大层面
汇聚在一起用来构建云的基础资源,这层用于构建云资源池的原始的、物理的和逻辑的计算(处理器,内存等),网络和存储资源
由云用户管理的虚拟/抽象的基础设施,例如各个云平台中的服务器基础设施等,这层是从资源池中使用的计算、网络和存储资产,例如,由云用户定义和管理的虚拟网络的安全性
二.保护虚拟网络
2.1 云网络虚拟化
每一个云厂商利用某种形式的虚拟网络来抽象物理网络并创建网络资源池,阿里云具有相关专业网络VPC的,如果作为云提供商或者私有云管理者,出于操作和安全的原因,将云的网络进行物理隔离是非常重要的。
2.2 云计算中常见的网络虚拟化
VLAN (虚拟局域网) 利用现有的网络技术在大多数网络硬件实现,但其本身并不适用大规模虚拟化或者安全性,不应该作为一个网络隔离的有效的安全控制手段来考虑
SDN (软件定义网络)在顶部的一个更完整的网络硬件抽象层,SDN将网络控制平面从数据平面解耦,使得用户摆脱传统局域网的局限性,对网络进行抽象
SDN特点: 1.提供有效的安全隔离边界 2.提供软件定义的任意IP范围 3.更好的扩展现有的网络 4.SDN的安全优势 5.隔离更容易,不受物理硬件的限制,构建出尽可能多的隔离网络 6.SDN防火墙(安全组)可用于比基本硬件的防火墙更灵活标准的资产,不受物理拓扑限制 7.与云平台的编排层相结合,使用传统的硬件或基于主机的方法,可以使用较 少的管理开销实现非常动态和粒度化的组合和策略 8. 默认拒绝通常是起点
2.3 微分段和软件定义的边界
微分段 微分段利用虚拟网络拓扑来运行更多、更小, 更加孤立的网络,而不用增加额外的硬件成本 利用此功能,如果攻击者破坏单个系统,这将大 大降低爆炸半径。攻击者不能再利用此立足点扩展整个数 据中心
软件定义的边界云安全联盟软件定义边界工作组开发了 一种模型和规范,它结合了设备和用户身份验证,动态地提供对资源的网络访问和增强安全性
SDP三个组件
1.连接资产的 SDP 客户机
2.SDP 控制器,用于验证和授权 SDP 客户机并配置与 SDP 网关的连接
3.SDP 网关,终止 SDP 客户机网络流量,在与 SDP 控制器通信时强制执行策略。
2.4 监控和过滤
如果两个虚拟机位于相同的物理机器上,则没有理由将机箱内的网络流量路由到网络之上,他们可以直接通讯,并且在网络上(或附加在路由器/交换机硬件)的监控和过滤 工具永远看不到流量。
解决办法: (1)可以将流量路由到同一硬件(包含网络安全产品的虚拟机版本)上 的虚拟网络监控或过滤工具。 (2)将流量桥接道网络,或路由到相同虚拟网络的 网络设施上
云平台/提供商可能不支持直接访问网络监控。由于复杂性和成本,公有云提供商 很少允许客户进行全面数据包网络监控
2.5 提供者 & 消费者的责任
云提供商责任
云提供商要负责建立安全的网络基础设施并正确配置。隔离和独立网络流量, 以防止租户访问其他用户的流量,这是绝对最高优先级的安全性。这是任何多租户网 络最基础的安全控制。
云用户责任
云消费者主要负责合理配置虚拟网络的部署,尤其是虚拟防火墙。云消费者负责管理器暴露控制正确权限管理及配置。当虚拟防火墙和/ 或监控不满足安全需求时,云消费者可能需要用虚拟安全设备或主机安全代理进行补偿
2.6云提供商或私有云的其他注意事项
云提供商
供应商必须维护物理/传统网络的核心安全性,平台在其之上构建。保持多租户环境的分区和隔离是绝对必要的。供应商必须向云用户暴露安全控制措施,以便他们能够正确配置和管理其网络 安全性。负责实现保护环境的边界安全,但最大限度地减少对客户负 载的影响确保当实例被释放回到虚拟机管理程序时,任何潜在的敏感信息是被擦除了,以确保当磁盘空间被重新分配后信息不能够被另一个客户读取
三. 云计算与负载安全
负载概念
负载作为一个处理单元,可以在虚拟机、容器或者其他的抽象中。负载始终运行 在处理器上并占用内存。 对于云提供商来说,维持每一个运行在硬件栈上的云负载及其硬件的完整性都是非常关键的
3.1 计算抽象类型
计算抽象类型,每一个都有不同程度的隔离性
虚拟机虚拟机是最广为人知的计算抽象形式,所有的 IaaS 提供商都可以提供。威胁挑战:虚拟机有遭到内存攻击的可能性,但由于软硬件的不断改进使得隔离逐步加强, 现在变得越来越难。在现在的 hypervisor 上运行的虚拟机通常受到了有效的安全 控制,并且针对虚拟机和安全运行环境的硬件隔离不断增强也将会不断提升这些 控制能力。
容器容器是运行在操作系统上的代码执行环境(目前),共享并充分利用操作 系统的资源。威胁挑战:容器提供了 一个受限的代码运行环境,只允许代码访问容器的配置定义的进程和功能。由于 容器的平台依赖性,其隔离功能不会与平台产生差异。容器也随着不同的管理系 统、底层操作系统和容器技术而快速发展。
基于平台的负载 基于平台的负载是一个更加复杂的类别,其运行在除虚拟机和容器之外的共享的平台上,如运行在共享数据 库平台上的逻辑/过程。威胁挑战:平台提供商需要对其隔离性和安全性负全部责任,尽管提供商可能 公开某些安全选项和控件。
无服务器计算 无服务器是一个广泛的类别,主要是指云用户不需要管理任何底 层硬件或虚拟机的场景,只需要访问公开的功能。威胁挑战:从安全角度上看,无服务器只不过是一个包含容器和基于平台 负载的组合项,由云提供商管理所有的底层,包括基础的安全功能和控制项。
3.2 云对负载安全的改变
所有的处理器和内存几乎都始终要运行多个负载,负载经常来自不同的租户。多 个租户很可能共享同一个物理计算节点,不同的物理栈上会有一系列的隔离能力。维持负载的隔离应该是云提供商的首要的责任之一。 尽管有的平台支持指定负载运行在特定的硬件池或通用位置来提供可用性、合规性和其他需求,但是不管使用哪种部署模型,云用户都很少能够控制负载的物理的运 行位置。
3.3 负载安全监控和日志的变化
安全日志/监控在云计算中更加复杂
日志中的IP地址并并一定反应一个特定的工作流,因为多个虚拟机可能在一段时间内共享相同的IP地址,而一切负载,如容器和无服务器负载可能根本没有可识别的IP地址
云具有更快的变化速度,日志也需要在外部更快地被卸载和收集。
日志的机构需要考虑云存储和网络消耗
四. 管理平面安全
管理平台安全
管理平面是传统基础架构和云计算之间唯一最重大的安全差异
管理平面控制和配置元结构,也是元结构本身的一部分,相当于管理平台及配置API,也都是API应用程序的一部分云管理平面负责管理资源池中的资产,云消费者负责配置他们的资产和部署到云端的资产
访问管理平面
管理平台通常是通过 API 和 Web 控制台来实现。应用程序接口允许对云的可编 程式管理。它们是将云 的组件保持在一起并实现其编排的粘合剂。
保障管理平面的安全(安全建议)
确保 API 网关和 Web 控制台具有足够的外围安全性 使用强认证和多因素认证
严格控制主账户持有人/root 账户凭证并考虑双重授权访问
与您的提供者建立多个账户将有助于账户粒度和限制危害范围(使用 IaaS 和 PaaS)
使用独立的超管和日常管理员账户,而不是 root/主账户持有人的凭据。
坚持使用最小特权账户访问元结构
可能的情况下强制使用多因素身份验证
五.业务连续性和容灾
责任模型
像安全和合规一样,业务连续性和灾难恢复(BC/DR)是双方共担的责任。云提 供方应管理其职责内的方面,云客户也应承担云服务如何使用和管理的最终责任。
混沌工程
混沌工程通常用于帮助构建弹性云部署,因为所有的云都是基于API的,所以混沌工程使用工具来选择性的降低云的某一部分,以持续测试业务连续性