我是靠谱客的博主 震动芝麻,最近开发中收集的这篇文章主要介绍【总结】AWS上安全的最佳实践,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

讲师:武杰 AWS架构师
下载地址:视频下载

1. 邱洋的总结

  • 云安全的保障需要3个层面联合努力
    – 云平台厂商(主要针对云中的硬件、网络、存储)
    – 用户自身(主要针对云中的应用,资源管理流程)
    – 合作伙伴(针对客户特别需求)
  • 云平台厂商的安全资质包括
    – 自身的资质,如cmmi、iso、soc等(甚至可以将资质租借给用户,以便拿下某些项目)
    – 行业资质,如金融、医疗、军工等
  • 云平台针对基础资源的安全保障包括
    – 物理机(ssh访问、所有操作都记录可审计、os加强配置–关闭端口等)
    – EC2(安全组、网络隔离、密钥保护、防攻击–山石)
    – VPC(网络自定义、ACL访问控制、vpn加密访问)
    – 存储(加密)
    – 多区域部署
    – 权限认证(IAM,用户、角色、分组,控制到是否允许访问那些资源)
    – 审计(每条操作–api和人工行为的审计、资源变更审计)

2. 责任分担的模型

2.1 分担模型的定义

责任分担模型的定义是在安全层面,AWS和用户之间各自负责自己可控的部分从而共同与风险抗争,其中:
- AWS负责两个层面的安全
– 1.全球基础设施、大区域、可用区
– 2.AWS提供的基本服务:计算、存储、数据库、网络等
- 用户负责的安全
– 1.加密密钥管理、客户端加密、通讯加密
– 2.OS打补丁、防火墙配置等
– 3.应用系统相关,如身份认证、权限管理等

AWS权责分担模型

2.2 AWS在安全层面的一些资质

  • SOC(注册会计师学会,针对服务性机构的控制,满足在美上市的公司的合规要求)
    – ISO(27001、9001在安全领域顶级的认证)
  • 行业层面
    – 银行业PCI(信用卡支付)等认证
    – 医疗行业,HIPAA BAAs
    – 媒体行业
  • AWS资质可以根据协议共享
    – AWS的报告根据协议共享给客户,从而快速满足共同客户的需求

AWS的一些端到端资质

案例:沃达丰有个项目要在欧盟落地,但是本身无法达到某个认证(PCI认证),AWS将资质借给沃达丰,这样沃达丰就可以很快通过欧盟的认证了

3. AWS云资源的覆盖性和可用性特征

3.1 AWS云计算资源在全球布局

AWS在全球11个大区,横跨五大洲。北美3,南美1,欧洲2,亚太3,大洋洲1,中国北京1
- 一个区域(Region):一组数据中心的集合,一个区域至少2个可用区,最多的区域有5个可用区。(AWS的区域布局如下图)
AWS在全球11个大区

3.2 AWS的可用区设计

  • 一个可用区(Availability Zone):每个可用区相当于一个数据中心,同一个区域间的可用区AZ都是相互之间通过网络高速互联的(AWS的可用区布局如下图)
    AWS的可用区分布

  • 边缘站点(Edge locations):主要部署AWS的DNS服务、CDN加速服务等,全球目前共有52个。(AWS的边缘站点布局如下图)
    AWS的边缘站点

4. 如何用AWS现有服务和产品来保护云中数据

4.1 可用性概述

AWS的整体建设目标就是为了持续可用(Continuous Availablility ),具体表现在
- 分布式的、可扩展的,容错的服务云服务
- 所有数据中心的AZ(可用区)同时在线
– 灾难恢复的数据中心
– 相同的管理标准
- 高速网络连接
– 顶级的SIP合作,AZ之间低延迟
– 弹性的网络基础设施

4.2 EC2的安全特征

多层面保障安全

  • 物理机层面(包括hypervisor)
    – 通过SSH登录,并记录管理员操作
    – 所有的访问都进行统计,并进行审查
  • 在vm的OS层面
    – 用户管理(用户拥有root和admin的权限)
    – AWS的管理员无法登陆
    – 用户自己定义的密钥
  • 标准防火墙(安全组)
    – 用户vm的访问默认是不可访问的(隔离的)
    – 允许用户自行控制
    – 防火墙的配置可以到端口层面,或者到其他安全组(开放给哪些人)
  • API访问
    – 采用x.509的安全加密进行调用

针对典型的三层架构AWS可给与的安全保障
- 针对web
– 可以通过安全组设置web只开放80端口
– 其他端口关闭
- 对于app应用层
– 可以打开ssh端口,和应用特定端口
– 应用承担堡垒机角色,用户只能在office的ip地址登陆app
- 对于数据库DB
– 不对外开放端口
– 数据库可以跟本地数据中心VPC连接和同步
– 数据库只可以被app访问

AWS中如何保护经典三层架构

4.3 在网络层面的安全(VPC)

  • 允许用户创建一个逻辑隔离的网络,高可扩展
  • 定义的私有ip规则,公有/私有子网(不接受Internet网络访问)
  • 允许网络访问控制,通过访问控制列表,来设置子网网段内访问的策略
  • VPC可以和本地数据中心网络进行VPN(加密通道)或专网连接
  • 保护vm的数据流量(流入、流出)控制(安全组中)

对于AWS的网络流量安全来说
- 最外面是VPC,会通过ACL控制
- 然后进入安全组
- 在OS层面的防火墙
- 最后进入vm
网络流量安全示意图

4.4 AWS的身份识别和权限控制(IAM)

  • 细粒度的控制都通过IAM来进行控制
    – 有些资源是开放人员用
    – 有些资源是生产人员使用
    – 有些资源项目A或B来使用
  • IAM可以被授权的实体
    – 用户
    – 用户组
    – 角色(例如某个程序要访问s3,就可以给程序授权)
  • IAM授权不会针对OS和app(建议使用LDAP,AD等)

AWS可以更细力度的控制用角色
- 控制的范畴:谁(who),可以在什么环境下(where)使用哪些方式(what)使用AWS环境
- 这个who甚至是可以是app应用程序,如某应用只能针对DanomyDB服务的行、列进行操作(PS:这些服务都是aws自己的服务)

IAM控制的权限力度

IAM可以和AD等已有企业权限工具进行集成
- IAM可以支撑AD的集成,也可以支撑openID
- 这样就不用每个企业客户都开放一个AWS的账号了
AWS的IAM可以跟AD相结合

临时安全账号访问
如一个手机可以访问S3的数据,不可能给每个手机都开放一个aws账号】,这就需要用到
AWS提供生成临时账号机制

4.5 AWS的密钥管理服务

  • 不同的服务使用不同的密钥,这样可以就看可能有多个密钥,提供管理界面
  • 集成cloudtriall来审核key日志
  • 两步认证机制
  • 密钥本身加密级别高
    AWS的密钥管理模式

4.6 购买CloudHSM(加密机)服务

相当于防篡改的硬件
AWS加密机

4.7 AWS config进行行为记录和审计

相当于开启一个CDMB数据库,例如:如果给EC2开启了AWS config服务,则可以随时看到EC2的配置、存储、ip等变更
AWS config可以获取到的信息

4.8 Cloud Trail开启后可以看到API的事件和IAM的访问记录

cloud trial的开启情况

AWS CloudTrail的日志可以用于的方面
- 安全分析
- 跟踪AWS的资源变化(例如vpc的acl变更)
- 了解API的调用过程
- 排障

cloud trial的监控对象

4.9 监控所有东西使用CloudWatch

cloudwatch监控的内容

5. AWS上有多种不同的存储服务适合不同的内容

AWS提供的存储类型

3.11 用户在做安全管理层面的建议

  • 最小授权
  • SOA理念,解耦服务并控制
  • 把系统和信息分类,不同级别系统和信息要保护
  • 在不同内容层面都要有安全
  • 安全状态要实时调查

4. 通过AWS服务构建典型的安全弹性的app

通过一个示例看一下
- VPC的AutoScaling可以实现应用的弹性伸缩
- 静态数据放在S3中,来分流静态数据
- 如果用户访问持续上升,通过CDN在全球范围进行加速,可以作为ddos的第一道防线
- 如果用户针对某个CDN边缘进行攻击,因此可以通过router53智能的将分流到不同的CDN站点
- AWS的router53和CDN是7*24小时服务,因此可以跟攻击者进行在线的资源对抗

安全弹性的APP架构图

5. 安全层面并不是一个厂家可以做完的

合作伙伴和可以提供更多安全服务
安全需要合作伙伴

最后

以上就是震动芝麻为你收集整理的【总结】AWS上安全的最佳实践的全部内容,希望文章能够帮你解决【总结】AWS上安全的最佳实践所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部