galagtek/defend-the-core

GitHub: galagtek/defend-the-core

该项目通过 VLAN 分段、Wazuh SIEM 监控和 NixOS 不可变堡垒机三大支柱,为中小企业提供符合零信任原则的完整安全基础设施加固方案。

Stars: 0 | Forks: 0

# 🏗️ Defend-The-Core — 中小企业安全基础设施加固方案 ## 🎯 解决的痛点 在大多数中小企业中,网络通常是“扁平化”的:如果某台终端因网络钓鱼而被攻陷,攻击者就可以进行横向移动,直至蔓延到数据库服务器。本项目通过**三大支柱**来应对这一风险: 1. **区域划分与分段** — 网络被划分为由配置为 *default-deny* 的防火墙隔离的多个 VLAN。被攻陷的终端只能看到其权限范围内的内容。 2. **监控与检测** — SIEM (Wazuh) 对所有机器的日志进行关联分析,并自动作出响应(实时封锁 IP)。 3. **安全管理** — **NixOS bastion** (PAW) 保证了配置的不可变性:杜绝任何配置漂移,攻击者无法实现持久化。 ## 🗺️ 网络架构 ``` ┌─────────────┐ │ Internet │ └──────┬──────┘ │ WAN (NAT VirtualBox) ┌────────┴────────┐ │ OPNsense │ Pare-feu / routeur inter-VLAN │ (default-deny) │ Règles strictes, NAT, DHCP relay └──┬─────┬────┬───┘ ┌────────────────┘ │ └─────────────────┐ │ │ │ ┌─────────┴──────────┐ ┌─────────┴──────────┐ ┌─────────┴──────────┐ │ VLAN 10 │ │ VLAN 20 │ │ VLAN 30 │ │ ZONE BUREAUTIQUE │ │ ZONE DMZ │ │ ZONE CRITIQUE │ │ 10.10.10.0/24 │ │ 10.10.20.0/24 │ │ 10.10.30.0/24 │ │ Non fiable │ │ Publique │ │ Serveurs métier │ │ │ │ │ │ │ │ • Win10 (employé) │ │ • Reverse proxy │ │ • Ubuntu (Web+BDD) │ │ • Kali (attaquant) │ │ • VPN gateway │ │ • Win Server (AD) │ └────────────────────┘ └────────────────────┘ └────────────────────┘ │ ┌──────────┴──────────┐ │ VLAN 99 │ │ ZONE ADMIN / SIEM │ │ 10.10.99.0/24 │ │ Très restreint │ │ │ │ • Wazuh (SIEM/XDR) │ │ • Bastion NixOS │ └─────────────────────┘ ``` 完整的** IP 地址分配规划**和**允许的流量矩阵**位于 [`architecture/`](architecture/) 中。 ## 🧩 组件与技术栈 | 虚拟机 | 角色 | 技术 | VLAN | |----|------|-------------|------| | **OPNsense** | 防火墙 / VLAN 间路由器 | OPNsense (API + XML) | 所有 | | **Wazuh** | SIEM / XDR,日志关联,主动响应 | Wazuh + Elastic/Kibana | 99 | | **Bastion** | PAW,安全管理,不可变 | NixOS (声明式配置) | 99 | | **Windows Server** | AD, DNS, DHCP | Windows Server 2022 | 30 | | **Ubuntu Server** | Web 服务器 + 数据库 | Ubuntu 26.04, Nginx, PostgreSQL | 30 | | **Windows 10** | 员工终端 | Windows 10 + Wazuh 代理 | 10 | | **Kali Linux** | 模拟攻击者 | Kali + 攻击场景 | 10 | ## 📁 仓库结构 ``` defend-the-core/ ├── architecture/ # Topologie réseau, plan d'adressage, matrice de flux ├── opnsense/ # Scripts de config du pare-feu (API + XML export) ├── wazuh/ # Installation manager, agents, règles, active response ├── bastion-nixos/ # configuration.nix durci (la star du projet) ├── windows-server/ # AD, DNS, DHCP, durcissement, GPO (PowerShell) ├── ubuntu-server/ # Durcissement CIS, auditd, UFW, SSH clés (shell) ├── windows-client/ # Agent Wazuh + durcissement Win10 ├── kali-attacker/ # Scénarios d'attaque reproductibles (démos) ├── docs/ # Documentation PDF (maître + annexes par domaine) ├── demos/ # Scénarios de validation pour l'entretien └── README.md ``` ## 🚀 快速部署 每个子目录都包含其对应的 `README.md` 详细说明。 建议的部署顺序如下: 1. **OPNsense** — 部署防火墙和区域划分 ([`opnsense/`](opnsense/)) 2. **Wazuh** — 安装 SIEM ([`wazuh/`](wazuh/)) 3. **Bastion NixOS** — 配置 PAW ([`bastion-nixos/`](bastion-nixos/)) 4. **业务服务器** — Ubuntu + Windows Server ([`ubuntu-server/`](ubuntu-server/), [`windows-server/`](windows-server/)) 5. **客户端终端** — Win10 + Kali ([`windows-client/`](windows-client/), [`kali-attacker/`](kali-attacker/)) ## 🎬 演示场景(用于面试展示) | # | 场景 | 展示内容 | |---|----------|--------------------| | 1 | [SIEM 检测](demos/scenario-1-detection.md) | 检测到 SSH 暴力破解 → 通过主动响应自动封锁 IP | | 2 | [零信任 / 分段](demos/scenario-2-zero-trust.md) | Win10 无法 ping 通 VLAN 30 和 VLAN 99 | | 3 | [安全管理 (PAW)](demos/scenario-3-paw-nixos.md) | 通过 ProxyJump 进行 SSH:Win → NixOS Bastion → 服务器;不可变性 | ## 🛡️ 合规性与参考标准 - **ANSSI** 建议:区域划分,隔离,最小权限原则 - **CIS Benchmark** 加固 (Ubuntu, Windows Server) - **零信任**:默认拒绝所有流量,强身份验证 (SSH 密钥 + FIDO2) - **不可变性**:NixOS 声明式配置,Git 可追溯性 ## 📄 文档 完整的文档以 PDF 格式生成在 [`docs/`](docs/) 目录中: - `00_architecture_maitre.pdf` — 架构总结与方案选型依据 - `01_reseau_opnsense.pdf` — 区域划分,VLAN,防火墙 - `02_securite_wazuh.pdf` — SIEM,检测,主动响应 - `03_durcissement_serveurs.pdf` — Linux & Windows 加固 - `04_admin_bastion_nixos.pdf` — PAW,ProxyJump,NixOS 不可变性 ## 📜 许可证 基于 MIT 许可证分发。详见 [`LICENSE`](LICENSE)。
标签:AI合规, NixOS, OPNsense, Wazuh SIEM, 测试用例, 网络安全, 网络架构, 越狱测试, 隐私保护, 零信任架构