ananthu3212/websecscan-devops

GitHub: ananthu3212/websecscan-devops

基于 Terraform 和 AWS 的 WebSecScan 漏洞扫描平台生产级云部署基础设施,整合多种安全扫描工具并采用安全的私有子网架构。

Stars: 0 | Forks: 0

# WebSecScan — Cloud DevOps 基础设施 WebSecScan 的生产级云部署,这是一个 Web 漏洞扫描平台 —— 使用 Terraform、Docker 和 GitHub Actions CI/CD 在 AWS 上部署。 ## 🔍 什么是 WebSecScan? WebSecScan 是一个用于扫描网站漏洞的安全工具。它使用了 OWASP ZAP、Nmap、Nikto、WhatWeb 和 theHarvester。扫描结果存储在 PostgreSQL 中,并通过 React 前端进行展示。 ## 🏗️ 架构 ``` INTERNET │ ▼ Internet Gateway │ ▼ Öffentliches Subnetz (eu-central-1a + eu-central-1b) ├── React Frontend (ECS Service, Port 3000) └── ZAP Scanner (ECS Task, bei Bedarf) │ │ nur interner Datenverkehr ▼ Privates Subnetz (eu-central-1a + eu-central-1b) ├── Flask Backend (ECS Service, Port 5001) └── PostgreSQL (RDS, Port 5432) ``` ## 🛠️ 技术栈 | 类别 | 技术 | |---|---| | 云服务商 | AWS (eu-central-1 法兰克福) | | 基础设施即代码 | Terraform | | 容器化 | Docker | | 容器镜像仓库 | AWS ECR | | 容器编排 | AWS ECS (Fargate) | | 数据库 | AWS RDS PostgreSQL 15 | | CI/CD | GitHub Actions | | 后端 | Flask (Python) | | 前端 | React + Vite + Nginx | | 安全扫描 | OWASP ZAP, Nmap, Nikto, WhatWeb, theHarvester | ## 🔐 安全设计 - 后端服务运行在**私有子网**中 —— 无法从互联网直接访问 - **最小权限安全组** —— 每个服务仅与其必须通信的对象进行交互 - 数据库**没有公有 IP** —— 仅 Flask 可在内部进行访问 - 密钥通过**环境变量**进行管理 —— 绝不硬编码在代码中 - Docker 镜像存储在**私有 ECR** 中 —— 不对公众开放 ## 📁 项目结构 ``` websecscan-devops/ ├── terraform/ │ ├── main.tf # Hauptmodul │ ├── variables.tf # Eingabevariablen │ ├── outputs.tf # Ausgabewerte │ └── modules/ │ ├── networking/ # VPC, Subnetze, Gateways │ ├── security-groups/ # Sicherheitsgruppen │ ├── rds/ # PostgreSQL auf AWS RDS │ ├── ecr/ # Docker-Image-Registry │ └── ecs/ # Container-Orchestrierung ├── Backend/ # Flask-Anwendung ├── Front-end/ # React + Vite Anwendung └── docker-compose.yml # Lokale Entwicklungsumgebung ``` ## 🚀 部署 ### 前置条件 - 已配置 CLI 的 AWS 账户 - 已安装 Terraform - 已安装 Docker ### 部署基础设施 ``` cd terraform terraform init terraform plan terraform apply ``` ### 销毁基础设施 ``` terraform destroy ``` ## 📚 我学到了什么 - AWS 网络(VPC、子网、安全组、路由表) - 使用 Terraform 实现基础设施即代码 - 使用 ECS 进行容器编排 - DevSecOps 实践 —— 将安全融入每一层 - 使用 GitHub Actions 实现 CI/CD 自动化
标签:AWS, AWS ECR, AWS ECS, AWS Fargate, AWS RDS, CTI, Docker, DPI, EC2, ECS, Flask, GitHub Actions, IaC, Nginx, NIDS, Nikto, Nmap, OWASP ZAP, PostgreSQL, Python, React, Syscalls, Terraform, Vite, Web漏洞扫描, 云基础设施, 前端, 后端, 安全合规, 安全扫描, 安全防御评估, 实时处理, 容器化, 密码管理, 插件系统, 无后门, 无线安全, 时序注入, 权限最小化, 测试用例, 漏洞利用检测, 特权提升, 网络代理, 网络安全审计, 网络安全架构, 自动化部署, 自动笔记, 虚拟驱动器, 请求拦截, 逆向工具