SowmyaB-sec/AWS-WordPress-Security-Hardening
GitHub: SowmyaB-sec/AWS-WordPress-Security-Hardening
在 AWS EC2 上从基础设施到应用层全面加固生产级 WordPress 环境的安全实践项目,采用分层防御策略将关键漏洞降至零。
Stars: 0 | Forks: 0
# 在 AWS EC2 上构建安全的 LAMP + WordPress
## 项目概述






## 安全挑战与威胁模型
在公有云基础设施上部署 LAMP + WordPress 技术栈会引入攻击向量。
- 针对 SSH 和管理面板的暴力破解攻击。
- Web 应用程序漏洞利用(通过易受攻击的插件引发 SQLi、XSS、RCE)。
- 配置不当导致的数据泄露。
- 来自插件和主题的供应链风险。
- DDoS 和大流量攻击。
- 日志记录不足以及缓慢的违规检测。
项目采用了 **STRIDE** + OSWAP Top 10**(Web 和云)方法来识别风险,并在网络层、计算层、应用层、身份层、数据层和可观测性层实施了分层控制。
## 架构概述
- **平台**:AWS EC2 (Amazon Linux 2023)
- **技术栈**:Apache 2.4 + MySQL 8.0 + php 8.x + WordPress 6.x
- **设计选择**:
- 选择 EC2 以获得对安全配置的完全控制和可见性。
- 带有本地数据库的单实例。
- 面向公网的应用程序受多层安全防护保护。
![架构图]
## 快速开始
### 前置条件
- 一个具有必要权限(EC2、VPC、IAM、S3、CloudWatch)的 **AWS Account**
- 已在本地安装并配置好的 **AWS CLI**。
- 在 AWS 中创建并注册的有效 **SSH 密钥对**,用于 EC2 访问。
- 指向 EC2 实例 Elastic IP 的域名(HTTPS/Let's Encrypt 必需)。
- 安装了 **SSH** 和 **Git** 的本地计算机。
- Linux 命令的基础知识。
- (可选 - 但推荐)一个 **Datadog** 账户,用于扩展监控和告警。
### 设置步骤
1. 克隆此代码仓库
2. 配置并加固 EC2 实例 ('infrastructure/README.md')
3. 安装并保护 LAMP 技术栈 ('lamp-stack/README.md')
4. 部署并加固 WordPress ('wordpress/README.md')
5. 设置监控和告警 ('monitoring/README.md')
6. 运行安全测试和验证 ('testing/README.md')
## 核心加固功能
### 基础设施安全 (AWS)
- 经过加固且占用空间最小的 Amazon Linux 2023 实例。
- 严格的 Security Groups(端口 80、443,带有 IP 白名单的自定义 SSH 端口)。
- SSH:仅允许密钥认证,禁用 root 登录,提供 Fail2Ban 保护。
- 具有默认拒绝策略的操作系统级防火墙 (UFW)。
- 附加到实例的最小权限 IAM role。
- 启用自动安全补丁更新。
- 使用 AWS Inspector 进行持续漏洞扫描。
### LAMP 技术栈加固
- Apache:隐藏 Server token,禁用目录列出,配置强大的 HTTP 安全标头。
- TLS:使用 Let's Encrypt 证书,配置自动 HTTP 到 HTTPS 重定向及 HSTS。
- 采用带有 OWASP Core Rule Set 的 mod_security WAF。
- MySQL:强化的配置,专用的最小权限用户,禁用远程访问。
- PHP:禁用版本信息暴露,限制危险函数。
### WordPress 应用程序安全
- 加固 'wp-config.php'(自定义数据表前缀,禁用调试,强制 SSL)。
- 更改管理员登录 URL + 启用 MFA/OTP。
- Wordfence Security(WAF、防火墙、恶意软件扫描器)处于阻断模式。
- 禁用 XML-RPC,严格的文件权限,启用自动更新。
- 每日加密备份至 AWS S3。
### 监控与告警
- 使用 AWS CloudWatch 进行指标监控、日志记录和智能告警。
- 集成 Datadog 用于高级监控和异常检测。
- 集成 Datadog 用于高级监控和异常检测。
## 使用的技术和工具
### 云与基础设施
| 工具 | 用途 |
|--------------|--------------|
|AWS EC2 | 计算 |
| Amazon Linux 2023 | 操作系统 |
| AWS Security Groups, IAM, Inspector | 安全控制 |
| AWS CloudWatch + S3 | 监控与备份 |
### 安全工具
| 工具 | 用途 |
|---------------------|----------------------------------|
| Fail2Ban | 暴力破解防护 |
| mod_security | Web 应用程序防火墙 |
| Wordfence | WordPress WAF 与安全 |
| WP 2FA | 多因素认证 |
| Let's Encrypt | TLS 证书管理 |
### 测试工具
| 工具 | 用途 |
|-------------------------|----------------------------------|
| Nmap, Nikto | 侦察与扫描 |
| Nessus Essentials | 漏洞评估 |
| WPScan | WordPress 漏洞扫描 |
| Wireshark / tcpdump | 流量分析 |
| SSL Labs, Mozilla Observatory | TLS 与安全标头 |
标签:AWS, CTI, DPI, GitHub Advanced Security, LAMP, Syscall, Web开发, WordPress, 云计算, 安全加固, 系统运维, 规则引擎