写点什么

如何保护你的 AWS 基础设施?这有一份指南!

  • 2019-09-10
  • 本文字数:2644 字

    阅读完需:约 9 分钟

如何保护你的AWS基础设施?这有一份指南!

云计算的核心优势,在于帮助企业将原本深度依赖于内部站点的网络服务负载交由云服务供应商打理。但是,公有云的便捷性背后也有代价——这项技术给安全保障带来新挑战。



由于云计算资源的范畴远超企业界线、甚至超越了传统定义,因此我们必须以与时俱进的眼光审视安全问题。在本文中,我们将介绍如何利用现有技术在立足云端交付目录信息服务的同时,继续保持理想的安全效果。


将关键计算基础设施组件迁移至云端,已经成为众多企业的首选解决方案。组织可能会被云服务的诸多优势所吸引,并决定将某些服务迁移至其中。


然而,对现有基础设施内各关键部分做出的任何根本性变更,都需要配合大量预先研究与分析,从而满足利益相关方的需求并确保成功完成过渡。


因此,云迁移的目标不仅应当考虑到业务便捷性,更应该在人力资源与预算水平能承受的范围内尽可能缩小攻击面。


本份指南的目标,在于帮助系统设计人员实现安全保障效果。文中将主要面向目录服务这一具体实现场景,以此为基础,概述所涉及的技术与需要解决的安全风险。


“混合云”是什么?

混合云解决方案,主要面向两大核心目标:以几乎完全等同于内部部署设施的方式集成公有云资源,同时实现与内部部署系统相当的安全级别。当然,负责对接云资源与内部网络的互联网天然具有安全隐患,这也让混合云体系下的安全保障变得更加困难。

拓扑

关于系统配置,最重要的文档之一就是网络拓扑记录。所谓网络拓扑,是指当前网络的布置方式,具体涵盖节点分布、将设备布局描绘为几何形式,同时体现其对应的连接关系等。


在计算基础设施中使用公有云计算资源时,必须在设计初就考虑到站点到站点之间的 VPN 机制。



网络拓扑中的 VPN 组件提供内部部署与非现场计算资源之间的链路。这种隧道链有助于实现网络扩展与安全性等目标。

保护与 AWS 管理相关的访问操作

以集中方式访问管理系统,无疑是对组织之内各用户计算机资源进行管控的最高效、也最安全的必要方式。幸运的是,AWS 提供身份访问管理(IAM)服务,能够很好地满足这方面需求。IAM 能够管理组织 AWS 账户当中所有用户的访问活动与控制策略。


在利用 IAM 管理指向账户的安全共享访问时,系统设计人员拥有两大选项:其一,在 IAM 当中创建用户与组;其二,也可以使用身份联动服务将现有访问管理解决方案扩展至云端。[2]本指南暂时不涉及第二种方法,虽然其同样非常有效,但超出了本文的探讨范畴。



当组织首次创建 AWS 账户时,生成的默认用户账户为“root”账户,其天然具备无法削减的最高权限。


因此,千万不要将 root 账户凭证交付给员工,让他们借此在账户上执行各种琐碎的日常操作。要解决这个问题,组织必须在 AWS IAM 当中设计并实现安全的用户层级架构。


为了建立这样一套层级架构,IAM 提供了两种机制:用户和组。用户的含义非常明确:具有一定访问级别的个人。IAM 中的组,代表着一种将多名用户聚集在一起并应用特定 AWS 安全策略的机制。


组织应当利用标准的用户层级架构确定各个组的对应权限水平,例如根据用户对于系统资源的特定需求将同一类用户整合成一组。



用户组层级


作为 IAM 为用户分配权限的基本原则,经过良好设计的 IAM 用户层级架构能够带来极佳的安全保障效果。IAM 会利用 AWS 账户策略为各用户针对各个组件分配不同的细化权限,同时亦可将各用户按权限级别进行分组。这些策略定义了用户能够访问的操作与信息,并从根本上为组织的安全保障提供基石。


因此,请确保在策略中限定每位用户只能访问其完成日常工作所需要的特定操作与信息。



IAM 未授权访问

保护指向 EC2 实例的网络访问

在确保 AWS 管理控制台的安全后,下一步工作就是保护指向云计算资源的网络访问。值得庆幸的是,AWS 同样提供了一系列开箱即用的工具,可彼此配合,为 EC2 公有云服务上的资源带来理想的安全水平。


每个 EC2 实例都通过弹性网络接口(ENI)获取网络连接能力。ENI 的功能与传统网卡非常相似,但却具有一项重要的增强功能:具有内置的有状态防火墙,且这些防火墙的访问控制列表(ACL)可通过安全组进行定义。


所有安全组都具有针对入站与出站流量的默认全删规则。因此,用户必须创建批准规则才能让流量抵达 EC2 实例。在为 EC2 实例创建安全组时,应遵循传统的防火墙设计方法。例如,应仅允许接收对于计算资源正常运行而言至关重要的流量,同时阻止所有其它不必要的流量。


由于安全组只能基于各个实例进行应用,因此 AWS 提供了 ACL 定义选项,以帮助用户对整个子网的访问方式做出调整。这些防火墙可用于保护 EC2 实例的网络访问,进而对类似子网当中的所有实例加以全面保护。在多层网络防火墙的设计中,大家应利用子网 ACL 补充实例并指定安全组。



AWS 网络 ACL 入站规则


最后,通过网络设计来实现网络安全。在 AWS 中,网络功能通过虚拟私有云(VPC)产品实现。VPC 属于彼此以逻辑形式相互隔离的虚拟网络。它们共同构成一套独立的大型专用网络,可根据需求分解为更小的单一子网。用户可利用 AWS 虚拟网络中的这种分段功能提升 EC2 实例的安全级别。


如果两个 EC2 实例之间不存在合法的通信需求,则应将其放在各自隔离的子网中。如此一来,管控实例间的通信也就降低了攻击者在系统中流窜的可能性。

以安全方式将 EC2 实例与本地网络对接

虚拟专用网络(VPN)连接是最安全的 EC2 计算资源与本地基础设施连接上午方式。为了协助完成这一对接过程,AWS 提供虚拟专用网关(VPG)产品,可引导用户轻松创建流量隧道。


VPG 专门负责将子网与 VPN 的加密隧道连接起来。要使用这项功能,用户需要为虚拟专用网关配置两条 VPN 隧道,从而将公有云与本地网络相连。AWS 要求用户使用此类配置以确保 VPN 以及公有云资源的高可用性。


一旦虚拟专用网关在公有云子网内创建完毕,接下来的任务就是在内部网络上配置 VPN 网关。该网关可由任何具备相关功能的软件或者硬件设备实现,包括多种现代商业级路由器。


例如,你可以选择安装有思科、瞻博或者 PfSense 固件的路由器。设备的选择,主要取决于你现有基础设施的状况以及 IT 预算水平。

总结

将企业 IT 基础设施迁移至云端,能够为提升传输带宽、降低灾难恢复成本以及控制硬件资本支出带来更大的灵活性。正因为具备这些优势,众多企业才积极“上云”。


但是,理想的效果源自良好的实施方案,只有符合这些要求的云计算解决方案才能真正为你带来与预期相符的回报——而这类方案,无疑应当满足本文中提出的所有要素。


与信息安全领域的其它工作一样,对计算机系统的保护极具挑战性,系统管理员必须不断寻求改进之道,才能有效抵御层出不穷的恶意威胁。


原文链接:


How to Secure your AWS Infrastructure


2019-09-10 14:443024

评论

发布
暂无评论
发现更多内容

推荐 2 款必备的 Django 开发神器

星安果

Python django Web 后端

困扰一周的奇葩bug:重复相似代码多,导致单片机程序跑飞

不脱发的程序猿

28天写作 硬件设计 嵌入式软件 单片机 3月日更

阿里面试官:Android开发真等于废人?已拿offer附真题解析

欢喜学安卓

android 程序员 面试 移动开发

程序员去大公司面试,小程序FMP优化实录,已拿offer入职

欢喜学安卓

android 程序员 面试 移动开发

可能是绝唱!阿里资深工程师深度解读Netty底层核心源码

Java架构追梦

Java 源码 架构 面试 Netty

python编译器中出现了绿色波浪线,光标放上去出现的提示是什么意思?

Emotion

低代码是什么?低代码价值主要体现在哪?

优秀

低代码

实现跨生态互联,区块链赋能智能家居新体验

旺链科技

区块链应用 智能家居

主数据建设的挑战与发展

EAWorld

电子证照上链--助推智慧政务

13530558032

LeetCode题解:92. 反转链表 II,迭代,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

字节抖音iOS客户端实习 123hr面 面经

iOSer

ios 字节跳动 面试 抖音

从解决Github TimeOut到经典面试题:从输入URL到浏览器显示页面发生了什么?

秦怀杂货店

GitHub TCP 网络 HTTP DNS

为了跳槽刷完1000道Java面试真题,没想到老板直接给我升职了

Java 程序员 架构 面试

定义结构体访问结构成员的三种方法

Emotion

基于深度学习的两种信源信道联合编码

华为云开发者联盟

深度学习 通信 编码 信源编码 信道编码

2021最新分享三面百度提前批(Java开发岗)面经 已拿Offer

比伯

Java 编程 架构 面试 程序人生

OpenKruise 如何实现 K8s 社区首个规模化镜像预热能力

阿里巴巴云原生

Serverless 容器 云原生 k8s 调度

区块链中药溯源--区块链为中医药溯源认证

13530558032

能源绿色管控:天然气站启动数字化转型,工业企业该如何突围?

一只数据鲸鱼

物联网 数据可视化 智慧城市 能源管理 天然气

Datadog 能成为最大的云监控厂商吗

睿象云

运维 运维平台 Datadog 云监控

被MySQL慢日志查询搞废了?3分钟教你快速定位慢查询问题!

观测云

云计算

为什么python中程序的结果会一直输出,需要怎么解决

Emotion

如何正确使用Python临时文件

华为云开发者联盟

Python 安全 临时文件 tempfile 库函数

​Autonomous Dream Works的独创力杰作EGGNetwork EFTalk

币圈那点事

Worktile 前端工程化之路

PingCode研发中心

大前端

Golang号称最快的Json解析器速度可达5623ns/op

happlyfox

学习 3月日更 Go 语言

力扣(LeetCode)刷题,简单题(第13期)

不脱发的程序猿

面试 LeetCode 28天写作 算法面经 3月日更

单账户实时记账能力达2万笔每秒 蚂蚁启用新一代高性能记账引擎

DT极客

透过 3.0 Preview 看 Dubbo 的云原生变革

阿里巴巴云原生

容器 运维 云原生 dubbo 应用服务中间件

这个GItHub上的Java项目开源了,2021最全的Java架构面试复习指南

Java 程序员 面试

如何保护你的AWS基础设施?这有一份指南!_安全_Ahad Sheriff_InfoQ精选文章