概述
AWS中与安全相关的组件主要有如下5个:
- AWS Inspector: 为EC2打漏洞补丁。
- AWS Shield Advance: 在OSI第4层,防止DDoS攻击。
- AWS WAF: 防火墙,工作在OSI第7层,可以防止DDoS,SQL注入和XSS等攻击。
- AWS GuardDuty:安全监控,监控VPC flow日志,Cloudtrail日志等,可以发现问题创建CloudWatch事件触发AWS Lambda进行防御。
- AWS Macie:识别数据中的敏感信息。
防火墙
- WAF可以使用ACL屏蔽IP, 可以防止XSS攻击。
- WAF可以根据IP屏蔽特定国家的流量。
- WAF有rate-based rule,可以防御DDoS攻击。
- WAF和 API Gateway、Cloudfront和ALB都能连用。
- WAF+Cloudfront+S3+OAI:静态网站解决方案。
- AWS Shield Advance 通常和NLB连用
加密
- Cloudfront field-level 加密,对HTTP Request参数加密。
- AWS CloudHSM = 专用的云中的加密解密模块,独享硬件不共享,对密钥有最完全的控制。可以和KMS集成,作为Custom Key Store
- S3的managed key encryption不支持client side encryption, S3在bucket policy中强制启用加密通过添加条件: “s3:x-amz-server-side-encryption”
- EFS支持TLS
- EBS强制加密是一个Regoin级的配置,在EC2的配置页面开启。
权限&IAM
- 跨account进行角色授权:同一个公司内部可以使用trust policy(assume)/ delegate access。向第三方授权使用external ID。
- 对于一些数据库可以使用 VPC sharing。
- S3 的bucket policy 和 SQS的access policy 能也能实现跨账号授权。
- S3的bucket owner对非自己上传的object默认不拥有权限,可以通过bucket policy的ACL配置“bucket-owner-full-control”迫使上传者在上传对象时授予bucket owner全权控制。
- Lambda execution role:给lambda权限去调用其他资源。其他资源调用lambda role在resource policy中配置。
- AWS API Gateway的usage plan可以限制访问者。
- AWS KMS CMK key policy控制每个key的权限。
- S3授予某个org访问权限, 在bucket policy中配置:PrincipalOrgID
- endpoint也有policy可以配置。
证书
- ACM可以为证书自动续期,imported证书是否临近过期用AWS Config检查。
- 如果希望cloudfront使用自定义域名,要申请证书并导入Cloudfront。且证书必须在us-east-1的ACM申请。
其他
- AWS 中使用 key pair的组件: EC2/Cloudfront
- Security Group可以独立存在,重复使用,配合VPC peering可以跨VPC。Security Group是有状态的,配置了inbound,则outbound自动放行,在配置网络时应优先使用。
- Policy里的关键词“NotAction”:表示规则应用于除此action之外
- AWS Secret Manager 和 security string in AWS systems manager parameter store都能加密字符串,但是Secret Manager能rotate密码。
- AWS STS (无需SAML) 和 AWS Single-SignOn: 登录AWS的其他手段。
- AWS Config managed rules中也有很多安全相关的现成的配置检查项,比如restricted-ssh会检查所有Security Group中ssh端口的访问是否配置了CIDR,而不是对所有IP开放。
-
AmazonSSMManagedInstanceCore allows an instance to use Systems Manager service core functionality. Systems Manager能对instances进行中央配置管理,跳过security group的限制进行ssh。
-
EKS Kubernetes API 服务器终端节点的公有访问禁止,安全访问方式:Bastion 或者 Transit Gateway:Amazon EKS 集群端点访问控制 - Amazon EKS