sudoNaji/Zero-Trust-Network-Security-Automation-Platform

GitHub: sudoNaji/Zero-Trust-Network-Security-Automation-Platform

一个基于AWS的云原生安全平台,通过自动化集成Suricata、ModSecurity等工具,实现零信任网络策略的部署、威胁检测和合规验证。

Stars: 1 | Forks: 0

Zero Trust Platform Terraform Ansible InSpec

🛡️ 零信任网络安全自动化平台

一个自托管的云原生实验室,用于自动化威胁检测、强制执行零信任策略,并以代码形式验证合规性

Status License Version Python

功能架构快速开始文档参与贡献

## 🌟 功能 ### 🎯 完整的零信任实现 - ✅ **永不信任,始终验证** - 每个请求都经过身份验证和授权 - ✅ **最小权限访问** - 安全组遵循最小权限原则 - ✅ **微隔离** - 三层网络隔离(公共层、应用层、数据层) - ✅ **持续监控** - 实时威胁检测与响应 ### 🔒 纵深防御 - 🛡️ **Suricata IDS/IPS** - 带动态防火墙的网络入侵检测系统 - 🌐 **ModSecurity WAF** - 配合速率限制的 OWASP CRS 防护 - 🔐 **Duo MFA** - 用于 SSH 访问的多因素认证 - 🚇 **WireGuard VPN** - 用于远程访问的安全的分割隧道 VPN ### 👁️ 全面可见性 - 📊 **ELK Stack** - 集中式日志聚合与分析 - 🌊 **NetFlow v9** - 流量遥测与异常检测 - 🔍 **Nmap 扫描** - 自动化网络发现与评估 - 📈 **Kibana 仪表板** - 实时安全可视化 ### ✅ 以代码形式实现合规 - 📋 **InSpec 配置文件** - 自动化合规性验证 - 🔄 **CI/CD 关卡** - GitHub Actions 策略强制执行 - 📝 **审计跟踪** - 完整的变更历史和日志记录 - 🎨 **合规性仪表板** - 可视化合规状态 ## 🏗️ 架构 ``` ┌─────────────────────────────────────────────────────────────────┐ │ 🌐 Internet │ └──────────────────────────────┬────────────────────────────────┘ │ │ 🔒 HTTPS (443) / HTTP (80) │ ┌──────────────────────────────▼────────────────────────────────┐ │ 🌍 Public Subnet │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ 🔄 ALB │ │ 🔐 Bastion │ │ 🛡️ Suricata │ │ │ │ (NGINX) │ │ (SSH) │ │ (IDS/IPS) │ │ │ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │ │ │ │ 🚇 VPN │ │ └─────────┼─────────────────┼─────────────┼───────────────────┘ │ │ │ ┌─────────▼─────────────────▼─────────────▼───────────────────┐ │ 🏢 App Subnet │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ 🖥️ App Srv │ │ 🖥️ App Srv │ │ 🖥️ App Srv │ │ │ │ (Node 1) │ │ (Node 2) │ │ (Node 3) │ │ │ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │ └─────────┼─────────────────┼─────────────────┼───────────────────┘ │ │ │ ┌─────────▼─────────────────▼─────────────────▼───────────────────┐ │ 💾 Data Subnet │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ 🔍 Elastic │ │ 📊 Logstash│ │ 📈 Kibana │ │ │ │ search │ │ │ │ │ │ │ └──────────────┘ └──────┬───────┘ └──────┬───────┘ │ │ ┌──────────────┐ │ │ │ │ │ 🗄️ Postgres │ │ │ │ │ │ │ │ │ │ │ └──────────────┘ │ │ │ └──────────────────────────┼─────────────────┼───────────────────┘ │ │ ┌──────────────────────────▼─────────────────▼───────────────────┐ │ 📦 S3 Storage │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ 📋 Flow Logs│ │ 📁 PCAP Files│ │ 💾 Backups │ │ │ └──────────────┘ └──────────────┘ └──────────────┘ │ └────────────────────────────────────────────────────────────────┘ ``` ## 📊 技能覆盖 | 类别 | 实现 | 状态 | |----------|----------------|--------| | ☁️ **云网络** | 具有三层子网布局的 AWS VPC | ✅ | | 🔌 **协议与服务** | TLS v1.2+,WireGuard VPN,仅 SSH v2 | ✅ | | 🛡️ **边界防御** | Suricata IDS/IPS,ModSecurity WAF | ✅ | | 🚦 **流量路由** | 具有负载均衡功能的 NGINX 反向代理 | ✅ | | 🔍 **网络审计** | NetFlow v9,ELK Stack | ✅ | | 🔎 **发现与评估** | Nmap + NSE,自动化扫描 | ✅ | | 📦 **数据包检查** | tcpdump,Wireshark,Suricata EVE | ✅ | | ✅ **以代码实现合规** | Chef InSpec,GitHub Actions CI/CD | ✅ | ## 🚀 构建阶段 ### 阶段 1:基础搭建 🏗️ (第 1-2 周) ``` ✅ AWS VPC with 3-tier subnets ✅ Security Groups with least-privilege rules ✅ SSH Bastion Host with Duo MFA ✅ WireGuard split-tunnel VPN ✅ InSpec baseline profile ``` ### 阶段 2:防御层 🛡️ (第 3-4 周) ``` ✅ Suricata IDS/IPS deployment ✅ NGINX reverse proxy with ModSecurity WAF ✅ Dynamic firewall automation ✅ Rate limiting and geo-IP blocking ``` ### 阶段 3:可见性 👁️ (第 5-6 周) ``` ✅ NetFlow v9 pipeline (ELK Stack) ✅ Anomaly detection scripts ✅ Automated tcpdump triggers ✅ Weekly Nmap scans with diffing ``` ### 阶段 4:以代码实现合规 ✅ (第 7-8 周) ``` ✅ Consolidated InSpec compliance suite ✅ GitHub Actions CI/CD gates ✅ Kibana compliance dashboard ✅ Attack scenario validation ``` ## 🛠️ 技术栈 ### 基础设施 | 工具 | 用途 | |------|---------| | 🏗️ **Terraform** | 基础设施即代码 | | ☁️ **AWS VPC** | 云网络 | | 🔐 **安全组** | 网络安全 | ### 安全 | 工具 | 用途 | |------|---------| | 🛡️ **Suricata** | IDS/IPS 引擎 | | 🌐 **ModSecurity** | WAF (NGINX 模块) | | 🔄 **NGINX** | 反向代理 / 负载均衡器 | | 🔑 **Duo MFA** | 堡垒机双因素认证 | | 🚇 **WireGuard** | VPN / 分割隧道 | | 🔥 **iptables** | 动态防火墙 | ### 可见性 | 工具 | 用途 | |------|---------| | 📊 **ELK Stack** | 日志聚合 | | 🌊 **NetFlow v9** | 流量遥测 | | 🔍 **Nmap + NSE** | 扫描与发现 | | 📦 **tcpdump / Wireshark** | 数据包检查 | | 🐍 **Python** | 异常检测 | ### 合规 | 工具 | 用途 | |------|---------| | ✅ **Chef InSpec** | 策略测试运行器 | | 🔄 **GitHub Actions** | CI/CD 关卡 | | 📋 **OWASP CRS** | WAF 规则集 | ## 🚀 快速开始 ### 前置条件 - 具有适当权限的 AWS 账户 - Terraform >= 1.5.0 - Ansible >= 2.15.0 - InSpec >= 5.0 - Python >= 3.10 ### 安装说明 ``` # 1. 克隆代码仓库 git clone https://github.com/sudoNaji/Zero-Trust-Network-Security-Automation-Platform.git cd Zero-Trust-Network-Security-Automation-Platform # 2. 配置变量 cp terraform.tfvars.example terraform.tfvars # 编辑 terraform.tfvars 文件,填入您的 AWS 和 Duo 凭据 # 3. 部署阶段一:基础架构 cd terraform/vpc terraform init terraform apply # 4. 部署阶段二:防御层 cd ../security-groups terraform init terraform apply cd ../bastion terraform init terraform apply cd ../ids-ips terraform init terraform apply cd ../waf terraform init terraform apply # 5. 部署阶段三:可见性 cd ../elk terraform init terraform apply # 6. 启用阶段四:合规性 cd ../../ci # 配置 GitHub Actions 密钥 ``` ### 验证 ``` # 测试堡垒机访问(应提示进行 Duo MFA 验证) ssh -i ~/.ssh/id_rsa admin@$(terraform output -raw bastion_public_ip) # 测试 WAF 阻断 curl -v https://$(terraform output -raw alb_dns_name)/?test= # 打开:http://localhost:5601 ``` ## 💰 成本估算 | 组件 | 实例类型 | 每月成本 | |-----------|--------------|------------| | 堡垒机 | t3.small | $8 | | Suricata | t3.medium | $15 | | WAF 代理 (2x) | t3.medium | $30 | | Elasticsearch | t3.large | $25 | | Logstash | t3.medium | $15 | | Kibana | t3.medium | $15 | | 数据传输 | - | $10-20 | | S3 存储 | - | $5-10 | | **总计** | | **$108-138** | ## 📚 文档 | 文档 | 描述 | |----------|-------------| | 📖 [架构](docs/architecture/overview.md) | 系统架构与设计 | | 🚀 [快速开始](QUICKSTART.md) | 5分钟设置指南 | | 📋 [设置指南](SETUP.md) | 完整的设置说明 | | 🔧 [部署运行手册](docs/runbooks/deployment.md) | 部署流程 | | 🚨 [事件响应](docs/runbooks/incident-response.md) | 安全事件处理流程 | | 📁 [项目结构](PROJECT_STRUCTURE.md) | 目录布局与组件 | | 🔄 [变更日志](CHANGELOG.md) | 版本历史与变更 | ## 📝 许可证 本项目基于 MIT 许可证授权 - 详情请参阅 [LICENSE](LICENSE) 文件。 ## 🙏 致谢 - 感谢 [OWASP](https://owasp.org/) 提供的核心规则集 - 感谢 [Suricata](https://suricata.io/) 提供的 IDS/IPS 引擎 - 感谢 [Chef InSpec](https://www.chef.io/products/chef-inspec) 提供的合规性测试 - 感谢 [Elastic](https://www.elastic.co/) 提供的 ELK Stack ## 📞 支持 - 📧 邮箱:security@example.com - 💬 问题反馈:[GitHub Issues](https://github.com/sudoNaji/Zero-Trust-Network-Security-Automation-Platform/issues) - 💡 讨论交流:[GitHub Discussions](https://github.com/sudoNaji/Zero-Trust-Network-Security-Automation-Platform/discussions)
**⭐ 如果它对你有帮助,请为这个仓库点个星!⭐**

为安全社区用心打造 ❤️

标签:AMSI绕过, Ansible, AWS, CTI, DevOps安全, DPI, Duo MFA, ECS, ELK Stack, InSpec, Metaprompt, ModSecurity, Suricata, Terraform, WireGuard, 人工智能安全, 合规即代码, 合规性, 合规执行, 威胁检测, 安全实验室, 安全组, 微分段, 持续监控, 漏洞利用检测, 特权提升, 现代安全运营, 系统提示词, 纵深防御, 结构化查询, 网络安全, 网络隔离, 自动化安全, 自动化部署, 负责任AI, 逆向工具, 速率限制, 防火墙, 隐私保护, 零信任安全, 零信任网络