shurugiken/aws-cloud-projects
GitHub: shurugiken/aws-cloud-projects
一套 AWS 云计算实操实验项目,通过静态网站托管和 IAM 最小权限监控两个场景帮助使用者掌握核心云架构技能。
Stars: 0 | Forks: 0
# AWS 云项目
两个实操实验室,展示了核心 AWS 技能:托管安全的静态网站,以及实现最小权限 IAM 和运维监控。
## 为什么选择这些项目
招聘经理希望看到你理解 AWS 服务*为什么*要这样组合在一起,而不仅仅是表明你能在控制台中点击操作。构建这些实验室是为了练习在每个 IT/系统管理员/云角色中都会用到的云基础知识:
- **在边缘安全地提供内容** — S3 + CloudFront + ACM
- **严格控制访问** — IAM 最小权限
- **了解何时出问题** — CloudWatch 告警
## 项目 1:基于 S3 + CloudFront + Route 53 + ACM 的静态网站
**目录:** `static-site/`
### 它的功能
通过 CloudFront CDN 在全球范围内提供静态网站服务,强制执行 HTTPS,使用 Route 53 管理自定义域,并使用 ACM 颁发的 TLS 证书 — 无需修补 Web 服务器,没有计算成本。
### 架构
```
Browser
|
v
Route 53 (DNS: example.com → CloudFront)
|
v
CloudFront Distribution
- HTTPS only (ACM certificate)
- Origin: S3 bucket (private, no public access)
- Origin Access Control (OAC) — CloudFront-only access to S3
|
v
S3 Bucket (private)
- Static assets (HTML/CSS/JS)
- Versioning enabled
- Server-side encryption (AES-256)
```
### 学到的知识
| 概念 | 为什么重要 |
|---|---|
| 带 OAC 的 S3 bucket policy | 保持 bucket 私有;只有 CloudFront 可以读取它 — 消除了直接访问的数据暴露风险 |
| us-east-1 中的 ACM 证书 | 无论你的内容存放在哪里,CloudFront 都要求证书位于 us-east-1 |
| Route 53 Alias record | Alias records 是免费的(对比 CNAME),并且是 zone apex(example.com,而不是 www)所必需的 |
| CloudFront 缓存行为 | 在 CDN 层控制 TTL、压缩和 HTTPS 重定向,而不是在 origin 端 |
| CloudFormation IaC | 可复现 — 几分钟内即可销毁并重新部署;无控制台漂移 |
## 项目 2:IAM 最小权限 + CloudWatch 监控
**目录:** `iam-least-privilege/`
### 它的功能
定义一个最小化的 IAM policy,授予对特定 S3 bucket 的只读访问权限(不包括其他任何权限),然后设置 CloudWatch 告警,以便在 S3 错误率升高时发出警报 — 证明访问控制和可观察性是相辅相成的。
### 架构
```
IAM Role (attached to EC2 / Lambda / service)
- Policy: s3:GetObject + s3:ListBucket on ONE bucket only
- No wildcard resources, no write permissions
- Explicit Deny on s3:DeleteObject (defense in depth)
CloudWatch
- Metric filter on CloudTrail logs → S3 4xx errors
- Alarm → SNS Topic → Email notification
```
### 学到的知识
| 概念 | 为什么重要 |
|---|---|
| 资源范围的 ARN | `arn:aws:s3:::my-bucket/*` vs `*` — 实践中的最小权限原则 |
| Explicit Deny | 覆盖其他附加 policy 中的任何 Allow;是对破坏性操作的双重保险 |
| IAM 中的 Conditions | 通过 IP、MFA 或时间进行限制 — policy 比大多数人意识到的更具表达力 |
| CloudWatch metric filters | 无需第三方 SIEM 即可将日志数据转化为可操作的信号 |
| SNS 告警通知 | 运维闭环 — 如果出现问题,相关人员会收到通知 |
## 展示的技能
`AWS S3` `CloudFront` `Route 53` `ACM` `IAM` `CloudWatch` `SNS` `CloudFormation` `Least Privilege` `Infrastructure-as-Code` `TLS/HTTPS` `DNS`
## 与此工作相关的认证
- AWS Certified Cloud Practitioner
- CompTIA Security+
- CompTIA Network+
- CompTIA A+
标签:AWS, DPI, IAM最小权限原则, 运维监控, 静态网站