shaheerkj/AWS-Security-Hands-On

GitHub: shaheerkj/AWS-Security-Hands-On

一套以 CLI 优先的 AWS 安全实操课程,通过 20 天渐进式实验室帮助学习者系统掌握从 IAM 身份管理到事件响应的云安全防护能力。

Stars: 0 | Forks: 0

# AWS 安全基础:从零开始到全面审计 这是一门自学为主的 20 天 AWS 安全实操课程——从锁定全新账户开始,一直到构建并最终销毁一个受到全面监控、加密且遵循最小权限原则的 3 层架构。每个章节都将理论与可运行的 AWS CLI(以及在相关情况下涉及 CloudFormation/Terraform)实验相结合,且大部分操作都在 AWS Free Tier 范围内进行。 请按顺序完成各个阶段的学习——每个阶段都将直接基于上一阶段中创建的资源、角色和概念进行构建。 ## 目录 ### 阶段 1:身份与访问管理 | # | 主题 | 描述 | |---|-------|-------------| | [01](./01-account-hardening-iam-basics/README.md) | 账户加固与 IAM 基础 | Root 与 IAM 用户、最小权限、显式拒绝与默认拒绝 | | [02](./02-iam-roles-federation-sts/README.md) | IAM 角色、联合身份验证与 STS | 角色与用户、临时凭证、跨账户访问、SSO | | [03](./03-organizations-scps-billing-guardrails/README.md) | Organizations、SCP 与 Billing 护栏 | 组织级权限上限、预算提醒、成本审查 | | [04](./04-cloudtrail-config/README.md) | CloudTrail 与 Config | 检测控制、审计日志记录、持续合规 | ### 阶段 2:网络与计算 | # | 主题 | 描述 | |---|-------|-------------| | [05](./05-vpc-fundamentals/README.md) | VPC 基础 | 自定义 VPC、跨可用区的公有/私有 subnet、IGW、NAT Gateway | | [06](./06-security-groups-and-nacls/README.md) | 安全组与 NACL | 有状态与无状态过滤、堡垒机访问、纵深防御 | | [07](./07-ec2-bastion-ssm-patch-hygiene/README.md) | EC2、堡垒机/SSM 与补丁管理 | SSM Session Manager、Patch Manager、Inspector、IMDSv2 | | [08](./08-load-balancing-and-auto-scaling/README.md) | 负载均衡与 Auto Scaling | 跨可用区的 ALB + ASG、ACM/TLS 终止、HTTPS 重定向 | | [09](./09-vpc-security-deep-dive/README.md) | VPC 安全深度剖析 | Flow Logs、VPC Endpoints、Transit Gateway/Peering 概念 | ### 阶段 3:存储、数据与加密 | # | 主题 | 描述 | |---|-------|-------------| | [10](./10-s3-fundamentals-and-public-access/README.md) | S3 基础与公开访问 | Block Public Access、存储桶策略、版本控制、生命周期规则 | | [11](./11-encryption-and-kms/README.md) | 加密与 KMS | Customer Managed Keys、密钥策略、SSE-S3 与 SSE-KMS 的对比 | | [12](./12-secrets-and-credential-management/README.md) | 密钥与凭证管理 | Secrets Manager、Parameter Store、轮换、禁止硬编码凭证 | | [13](./13-databases-and-rds-security/README.md) | 数据库与 RDS 安全 | 私有子网中的 RDS、数据库层安全组、静态加密、备份 | ### 阶段 4:检测、监控与威胁响应 | # | 主题 | 描述 | |---|-------|-------------| | [14](./14-cloudwatch-and-alarms/README.md) | CloudWatch 与警报 | Metrics 与 Logs 与 Events 的对比、CloudTrail Metric Filters、SNS 报警 | | [15](./15-guardduty-and-inspector/README.md) | GuardDuty 与 Inspector | 威胁检测与漏洞管理的对比、示例发现结果 | | [16](./16-security-hub-and-trusted-advisor/README.md) | Security Hub 与 Trusted Advisor | 集中式 CSPM、CIS Benchmark、Trusted Advisor 安全检查 | | [17](./17-waf-shield-and-incident-response-basics/README.md) | WAF、Shield 与事件响应基础 | 应用层防护、DDoS 缓解、事件响应 (IR) Runbook 基础 | ### 阶段 5:Serverless、IaC 与结业项目 | # | 主题 | 描述 | |---|-------|-------------| | [18](./18-serverless-and-least-privilege-functions/README.md) | Serverless 与最小权限函数 | 受限的 Lambda 执行角色、API Gateway 身份验证、事件驱动安全 | | [19](./19-infrastructure-as-code/README.md) | Infrastructure as Code | CloudFormation/Terraform、左移扫描、漂移检测 | | [20](./20-capstone-secure-3tier-architecture-review/README.md) | 结业项目:安全 3 层架构审查 | 完整的构建、威胁建模和销毁,将之前所有的主题融会贯通 | ## 完成课程后你将掌握 - Root 被锁定、全面启用 MFA、遵循最小权限原则的 IAM 用户、角色和 Lambda 执行策略 - 关于显式拒绝与默认拒绝、有状态过滤与无状态过滤的有效思维模型 - 使用临时凭证(STS、角色)全面取代嵌入的长期密钥,包括跨账户和 Serverless 访问场景 - 组织级护栏 (SCP) 和账单警报,同时限制权限和支出 - 完全私有且隔离的网络:公有/私有 subnet、链式安全组、无开放的 SSH 访问、强制实施 IMDSv2 - 默认实现静态和传输中的加密,使用 Customer Managed KMS 密钥并实现妥善的密钥策略职责分离 - 通过使用 Secrets Manager / Parameter Store 并配合轮换,彻底将密钥从代码中剥离 - 通过 CloudTrail 获取完整的审计跟踪,通过 Config 实现持续合规,并通过 Security Hub 进行集中化的安全态势管理 - 多层检测机制:GuardDuty(行为威胁)、Inspector(漏洞)、CloudWatch 警报(主动报警) - 通过 WAF 实现应用层防护,并掌握一套经过实践的“隔离 → 撤销 → 调查 → 补救”事件响应 Runbook - 基础设施即代码,部署前进行扫描,并配备漂移检测机制 - 一个完整且可运行的、安全的 3 层参考架构——完成构建、进行威胁建模,并彻底销毁至 $0 计费 这就是现实世界中 AWS 安全工作所依赖的身份、网络、数据、检测和自动化的基础。 ## 前置条件 - 一个 AWS 账户(Free Tier 足以完成大多数实验;少数实验——如 NAT Gateway、RDS、Shield Advanced 讨论——会产生少量费用,具体已在相关章节予以说明) - 已安装并配置好 AWS CLI v2 - 对命令行以及 JSON/YAML 有基本的了解 - 针对第 19 天:需要 Terraform 和/或 AWS CLI 的 CloudFormation 支持,以及 `cfn-lint`/`checkov`/`tfsec`(将在该章节的实验中安装)