本文讲解AWS良好架构框架(AWS Well-Architected Framework)里其中五大支柱之一:安全性(Security)
设计原则
- 在所有层面考虑安全性:除了要在传统的防火墙上考虑安全性之外,我们还需要在每个、安全组、网络ACL,负载均衡器本身(开放什么端口)、EC2服务器本身(是否安装防病毒软件,更新补丁)都考虑到安全的机制。
- 事件可追溯性:对环境中的一切操作和变更进行记录和审计,如果遭受到黑客攻击,我们需要知道我们遭受了怎么样的攻击,什么时候遭受的攻击等等。
- 最低权限原则:永远只赋予所需要的最小权限,不赋予过多的不必要的权限
- 专注于保护你的系统:在AWS责任分担模型的帮助下,你能够专注于保护自己的应用程序、数据和操作系统;而AWS负责保护基础架构和服务。
- 自动化安全最佳实践:使用和创建安装有补丁和强化过的虚拟服务器镜像(AMI),而后利用这个镜像来做服务器的搭建。利用版本控制机制来对模板进行定义和管理。
AWS责任分担模型
AWS责任分担模型(AWS Shared Responsibility Model)表明了AWS和客户在运营和维护云环境的时候所承担的安全性和合规性责任。同时这一部分也是考试经常会涉及的地方。
基本上,AWS需要负责“云本身的安全”。
AWS需要负责保护运行所有AWS云服务的基础架构,包括基础架构内的所有硬件、软件、网络和设备。同时也包括了区域、可用区和边缘节点。
举个例子,AWS会负责云环境的机房是否装有CCTV、是否有物理访问安全的审计(据闻AWS的数据中心是禁止任何客户的其他公司参观的,只有自己的运维人员可以进入)、保证不同的可用区之间的网络互通和高可用、保证物理服务器的健康状态以及禁止非授权的人士进行物理访问、保证所有磁盘和设备都没有到达生命周期、保证数据库服务(比如RDS)的操作系统层面已经打上了补丁,不会被黑客侵入等等……
而客户需要负责“云内部的安全”。
客户的责任取决于使用了什么AWS服务,客户需要负责自己所使用的EC2实例在操作系统层面已经打好了补丁,配置好了相应的安全组和端口、VPC和S3都使用了ACL进行访问控制、IAM已经做好了MFA(Multi-Fator Authentication,多因素认证)并且对相关人员的权限控制已经做好了相应的规划、保证使用了数据加密、保证在OS上安装的应用程序没有漏洞已经是最安全的配置、保证RDS配置了相应的安全组和子网等等……
定义
定义的内容非常丰富,在这里只截取一部分比较重要的信息,更多信息可以查看文末的链接。
云环境下的安全性主要由以下五方面组成:
- 身份与访问管理(Identity and Access Mangement)
- 使用IAM和MFA来使你的账号更加安全
- 常见问题:
- 如何保护你的AWS根账号的安全性?
- 如何定义角色和责任来管理人员访问AWS资源(通过管理控制台以及通过API)
- 如何限制你的程序访问AWS资源(应用程序、脚本、第三方工具或服务)
- 检测控制(Detective Controls)
- 使用AWS CloudTrail, AWS Config, Amazon CloudWatch
- 常见问题:
- 如何捕捉和分析AWS的日志?
- 基础设施保护(Infrastructure Protection)
- 使用VPC、安全组、NACL来保护你的基础设施安全
- 常见问题:
- 如何保护实例的安全,如何保护网络的安全?
- 如何保护AWS服务的安全?
- 如何保护操作系统和EC2实例的安全?(是否有补丁,杀毒软件等)
- 数据保护(Data Protection)
- 你需要保护数据在传输过程中和存储过程中的安全性
- 使用EBS, S3和RDS的加密功能
- 常见问题:
- 如何加密和保护你的数据存储
- 如何加密和保护你的数据传输
- 事件响应(Incident Response)
- 使用IAM, CloudFormation, API来做事件响应
更多资料请阅读安全性支柱 – AWS良好架构框架