sja32/azure-SCAP-automation
GitHub: sja32/azure-SCAP-automation
通过OpenSCAP和Ansible实现Azure Linux虚拟机的自动化STIG合规扫描与修复,生成可审计的安全报告并验证加固效果。
Stars: 0 | Forks: 0
# Azure SCAP 自动化
使用 OpenSCAP 和 Ansible 对 Azure Linux 虚拟机进行自动化 STIG 合规性扫描和修复。
## 🚀 概述
本项目为基于 Linux 的 Azure 虚拟机实现了可重复的安全和合规工作流程。它利用 OpenSCAP 进行 DISA STIG 合规性扫描,并使用 Ansible 进行编排和操作系统加固。
目标是模拟真实企业环境中在云环境下评估、修复和验证系统安全状况的流程。
## 🧱 架构
- Azure IaaS Linux VM(NGINX Web 服务器)
- Ansible 控制节点(本地实验室环境)
- OpenSCAP(STIG 合规性扫描)
- 文件共享(工件存储)
- STIG Viewer(检查清单验证和文档)
## 🔄 工作流程
1. 配置 Azure VM(Terraform 或手动部署)
2. 通过 Ansible 执行 OpenSCAP 扫描
3. 生成合规性工件:
- `results.xml`(XCCDF 结果)
- `report.html`(人类可读的报告)
4. 将工件传输到集中共享位置
5. 将 SCAP 结果导入 STIG Viewer
6. 应用修复剧本(Ansible)
7. 重新运行扫描以验证合规性改进
## 🛠️ 工具和技术
- Microsoft Azure(IaaS)
- Ansible
- OpenSCAP
- NGINX
- Linux(Ubuntu / RHEL)
- STIG Viewer
## 📂 项目结构
azure-SCAP-automation/
├── inventory/
├── group_vars/
├── playbooks/
├── roles/
├── artifacts/
├── docs/
├── scripts/
└── README.md
## ⚙️ 入门指南
### 克隆仓库
git clone git@github.com:sja32/azure-SCAP-automation.git
### 运行扫描
ansible-playbook -i inventory/inventory.ini playbooks/scan-linux-stig.yml
### 运行修复
ansible-playbook -i inventory/inventory.ini playbooks/remediate-linux-baseline.yml
## 📊 输出
生成的工件:
- results.xml
- report.html
- oscap-console.txt
## 🔐 安全注意事项
- 在禁用密码之前验证 SSH 密钥身份验证
- 将 SSH 访问限制为可信 IP
- 在启用之前验证防火墙规则
## 📘 经验教训
- SCAP 结果可以导入 STIG Viewer
- 并非所有控制都能完美映射
- 自动化减少了手动工作
## 🔮 未来增强
- 基于角色的 Ansible 设计
- 计划扫描
- Azure Policy 集成
- NGINX 加固验证
## 👤 作者
Sharod Allen
信息系统安全工程师(ISSE)
## 📌 总结
本项目展示了:
- 自动化合规性扫描
- 安全基线执行
- 云安全集成
- 可审计的工件生成
标签:Ansible, Azure, Azure VM, DevSecOps, ECS, NGINX, OpenSCAP, RHEL, STIG, Terraform, XCCDF, 上游代理, 云安全扫描, 云计算安全, 合规自动化, 安全合规, 模块化设计, 系统加固, 系统提示词, 网络代理, 自动化修复, 自动化运维, 负责任AI