CodisTech/homelab-configs
GitHub: CodisTech/homelab-configs
将航母级网络安全原则融入家庭实验室的基础设施即代码项目,通过 Wazuh SIEM、零信任架构和 NIST 800-53 映射实现企业级纵深防御。
Stars: 1 | Forks: 0
# 家庭实验室基础设施即代码
这不是一套教程合集。这是一个我每天都在操作、监控和防护的真实基础设施——将我曾在尼米兹号航空母舰 (CVN-68) 上管理网络安全行动所使用的原则,应用到了这个自托管环境中。
## 为什么会有这个项目
企业级安全理念并不一定需要企业级的预算。这个家庭实验室证明了:借助开源工具和精心的架构设计,完全可以构建出具备纵深防御、零信任访问、集中化监控以及符合合规要求的基础设施。
本仓库中的每一项配置都是用于实际生产的——这些都是运行我基础设施的真实文件,受到版本控制并得到持续维护。
## 架构
```
Internet
│
▼
┌──────────────────────────────────────────────────────┐
│ Edge Layer │
│ Cloudflare ──▶ Traefik ──▶ CrowdSec ──▶ Authentik │
│ (CDN/WAF) (Reverse (Threat (SSO/MFA) │
│ Proxy) Detection) │
└──────────────────────┬───────────────────────────────┘
│
┌──────────────────────▼───────────────────────────────┐
│ Network Segmentation │
│ │
│ VLAN 10 ─ Management VLAN 30 ─ IoT/Smart Home │
│ VLAN 20 ─ Services VLAN 40 ─ Business (CRL) │
│ │
└──────────────────────┬───────────────────────────────┘
│
┌──────────────────────▼───────────────────────────────┐
│ Security Monitoring │
│ │
│ Wazuh SIEM ─── Prometheus/Grafana ─── Pi-hole DNS │
│ (2,337 vulns (Metrics & (DNS │
│ triaged) Dashboards) Filtering) │
│ │
└──────────────────────┬───────────────────────────────┘
│
┌──────────────────────▼───────────────────────────────┐
│ Hypervisors & Storage │
│ │
│ Proxmox VE (256GB + 128GB RAM) ─── Unraid (80TB) │
│ │
└──────────────────────────────────────────────────────┘
```
## 服务
### 安全与访问控制
| Service | Purpose | Key Detail |
|---------|---------|------------|
| [Wazuh](wazuh/) | SIEM,日志分析,FIM,漏洞检测 | 已分类处理 2,337 个漏洞,映射 NIST 800-53 |
| [Traefik](traefik/) | 反向代理,自动 TLS,请求路由 | 集成 CrowdSec 和 Cloudflare |
| [Authentik](authentik/) | 身份提供商,SSO,强制执行 MFA | 所有服务的零信任访问 |
| [Pi-hole](pihole/) | DNS 过滤和广告拦截 | 双实例保障冗余 |
### 监控与可观测性
| Service | Purpose | Key Detail |
|---------|---------|------------|
| [Prometheus/Grafana](opensense-monitoring/) | 指标收集与可视化 | 基础设施健康状态的自定义仪表板 |
| [Loki/Promtail](opensense-monitoring/) | 日志聚合与搜索 | 补充 Wazuh 处理操作日志 |
| [Checkmate](checkmate/) | 在线时间监控 | 服务可用性追踪 |
| [Netdata](monitoring/) | 实时系统指标 | 按主机划分的性能监控 |
### 自动化与 DevOps
| Service | Purpose | Key Detail |
|---------|---------|------------|
| [n8n](n8n/) | 工作流自动化 | 内容发布,告警,业务流程 |
| [Renovate](renovate/) | 自动化依赖更新 | 为 Docker 镜像更新创建 PR |
| [Diun](diun/) | 容器更新通知 | 针对新镜像版本的 Telegram 告警 |
| [Gitea](gitea/) | 自托管 Git | 所有配置的内部事实来源 |
### 应用
| Service | Purpose | Key Detail |
|---------|---------|------------|
| [Nextcloud](nextcloud/) | 文件同步与协作 | Google Drive 的自托管替代方案 |
| [Home Assistant](homeassistant/) | 智能家居自动化 | 搭配语音控制的 Matter/Thread 架构 |
| [Firefly III](firefly-iii/) | 财务管理 | 采用 Profit First 方法的自托管记账系统 |
| [Media](media/) | Plex,Emby 媒体服务器 | 集中化的媒体管理 |
## 安全特性
**零信任访问** — 每项服务都处于强制执行 MFA 的 Authentik SSO 保护之后。没有任何服务在未经认证的情况下被直接暴露。
**全链路 TLS** — Traefik 通过 Cloudflare DNS 挑战自动配置和续订证书。所有内部和外部流量均已加密。
**行为威胁检测** — CrowdSec 分析访问模式,并基于社区威胁情报自动拦截恶意 IP。
**集中式 SIEM** — 所有日志发送至 Wazuh 进行关联分析、告警和合规性报告。文件完整性监控可检测未授权的更改。
**网络隔离** — 隔离的 VLAN 及控制网段间流量的防火墙规则。IoT 设备无法访问管理基础设施。
**密钥管理** — 所有敏感配置均使用环境变量。提供了 `.env.example` 模板,实际的密钥绝不会提交至 Git。
**自动化补丁工作流** — Diun 检测可用的容器更新,Renovate 创建拉取请求,人工审核并合并,生产环境拉取更新后的镜像。
## GitOps 工作流
```
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ Diun │────▶│ Telegram │ │ Renovate │
│ (8 AM) │ │ Alert │ │ (9 AM) │
└─────────────┘ └─────────────┘ └──────┬──────┘
│
┌──────▼──────┐
│ Gitea PR │
└──────┬──────┘
│
┌──────▼──────┐
│ Review │
│ & Merge │
└──────┬──────┘
│
┌──────▼──────┐
│ Production │
│ Deploy │
└─────────────┘
```
每一项基础设施变更都会被追踪、审核,并且是可回滚的。
## 快速开始
```
git clone https://github.com/CodisTech/homelab-configs.git
cd homelab-configs/
cp .env.example .env
# 使用你的值编辑 .env
docker-compose up -d
```
每个服务目录都包含各自的 README,其中提供了具体的部署说明、配置详情以及经验总结。
## 相关项目
- [Policy-as-Code 框架](https://github.com/CodisTech/policy-as-code) — 使用 OPA、InSpec 和 Sentinel 将合规策略定义为代码
- [CyberReadyLabs](https://cyberreadylabs.com) — 基于此基础设施构建的网络安全咨询业务
## 许可证
[MIT](LICENSE)
标签:AMSI绕过, AppImage, Authentik, CDN, Cloudflare, CrowdSec, EC2, Homelab, IaC, IAM, IP 地址批量处理, JSONLines, MFA, MITRE ATT&CK, NIST 800-53, PB级数据处理, PE 加载器, SecOps, SSO, Traefik, VLAN, WAF, Wazuh, Web应用防火墙, 云安全架构, 企业安全, 单点登录, 反向代理, 合规, 多因素认证, 威胁检测, 安全可观测性, 安全运维, 家庭实验室, 持续监控, 插件系统, 版本控制, 版权保护, 生产环境, 纵深防御, 网络分段, 网络安全, 网络资产管理, 自定义请求头, 自托管服务, 请求拦截, 身份与访问管理, 边缘网络, 隐私保护, 零信任