tigranadamyan/WAF-security-sites

GitHub: tigranadamyan/WAF-security-sites

基于 Nginx 和 Suricata 的多层 Docker 安全网关,通过隔离网络架构保护 Web 应用免受常见攻击。

Stars: 0 | Forks: 0

# 🛡️ 安全网关设置 包含 **Suricata IPS** 和 **Nginx Gateway** 的完整 Web 应用程序防护系统。 ## 🎯 已实现功能 您已成功为 Web 应用程序部署了**多层安全系统**,包括: ### 🧩 系统组件 - **Nginx Gateway** — Web Application Firewall (WAF) 和反向代理 - **Suricata** — 入侵检测与防御系统 (IPS/IDS) - **隔离网络** — 分段式安全架构 - **隐藏后端** — 核心应用无法从外部直接访问 ## 🔧 安全架构 ``` [Внешний трафик] ↓ [Suricata IPS/IDS] ← мониторинг ↓ [Nginx Gateway :80] ← единственная точка входа ↓ [Сеть security-net] ← изолированный сегмент ↓ [Основное приложение] ← скрыто от внешнего доступа ``` ## 📁 项目结构 ``` project/ ├── docker-compose.yml # Шлюз безопасности ├── main-docker-compose.yml # Основное приложение ├── nginx/ │ └── conf/ │ └── nginx.conf # Конфигурация WAF ├── suricata-logs/ # Логи IPS ├── scripts/ │ ├── monitor.sh # Мониторинг системы │ └── update-rules.sh # Обновление правил └── .env # Переменные окружения ``` ## 🚀 快速开始 1. **克隆仓库** 2. **在 `.env` 中配置参数** 3. **启动系统** docker-compose up -d 4. **检查运行状况** ./scripts/monitor.sh ## ⚙️ 主要命令 ``` # 启动整个系统 docker-compose up -d # 停止系统 docker-compose down # 更新 Suricata 规则 ./scripts/update-rules.sh # 监控状态 ./scripts/monitor.sh # 查看 Suricata 日志 tail -f suricata-logs/fast.log # 检查网络连接 docker network inspect security-net ``` ## 🔒 端口与可访问性 | 端口 | 用途 | |------|-------------| | 80 | HTTP 流量(唯一开放的端口) | | 443 | HTTPS 流量 | | — | 核心应用隐藏在网关之后 | ## 📊 监控与日志 **Suricata:** - `suricata-logs/fast.log` — 主要事件 - `suricata-logs/eve.json` — 详细事件 (JSON) **Nginx:** - `nginx/logs/` — 访问与错误日志 - Health check: `http://localhost/health` - 系统状态: `./scripts/monitor.sh` ## 🛠️ 安全配置 ### 🔐 Nginx Gateway 作为 WAF ``` # 保护性 headers add_header X-Frame-Options "SAMEORIGIN"; add_header X-XSS-Protection "1; mode=block"; add_header X-Content-Type-Options "nosniff"; # 请求限制 limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; ``` ### ⚔️ Suricata IPS - 检测 SQL 注入 - 防御 XSS 攻击 - 监控可疑 payloads - 检测端口扫描 ## 🔄 更新规则 ``` # 自动更新规则 ./scripts/update-rules.sh # 或手动 docker exec suricata-ips suricata-update ``` ## 🚨 事件响应 ``` # 检查 Suricata 日志 tail -f suricata-logs/fast.log # 分析攻击 cat suricata-logs/eve.json | jq . # 封禁 IP # (通过 Nginx 配置) # 在发现新威胁时更新规则 ./scripts/update-rules.sh ``` ## ✅ 实施优势 - 🧱 **纵深防御** — 多层安全架构 - 🔒 **完全隔离** — 核心应用无法从外部直接访问 - 🩺 **实时监控** — Suricata 实时检测威胁 - ⚙️ **可扩展性** — 轻松添加新服务 - 🧭 **易于管理** — 统一的入口与控制点 ## 🔍 运行状况检查 ``` # 通过 gateway 检查可用性 curl http://localhost/ # 检查 health check curl http://localhost/health # 检查 Suricata 日志 docker logs suricata-ips # 确保主站已隐藏 curl http://localhost:8099 # должен быть недоступен ``` 🎉 **恭喜!** 您已成功部署了专业的安全系统。 您的应用现已达到**企业级**安全防护标准。
标签:AppImage, BurpSuite集成, Cutter, Docker, Metaprompt, Nginx, Suricata, Web应用防火墙, WSL, 入侵防御系统, 威胁猎捕, 安全网关, 安全防御评估, 版权保护, 现代安全运营, 请求拦截