Homelab Configuration

System 01 // Network Topology
graph TD classDef wan fill:#1a0505,stroke:#ef4444; classDef router fill:#1e1b05,stroke:#f59e0b; classDef security fill:#050d1a,stroke:#3b82f6; classDef server fill:#051a0d,stroke:#10b981; subgraph WAN ["INTERNET INGRESS"] A1["Airtel (Locked)"]:::wan A2["Broadband 2"]:::wan A3["SIM Link"]:::wan end WAN --> LB["TL-R605 Load Balancer"]:::router subgraph GATE ["SECURITY GATEKEEPER"] PFS["pfSense Firewall"]:::security SXG["Sophos XG"]:::security subgraph DNS ["DNS CLUSTER"] AG1["AGH Instance 1"]:::security AG2["AGH Instance 2"]:::security AG3["AGH Instance 3"]:::security QUIC["DNS-over-QUIC"]:::security AG1 & AG2 & AG3 --> QUIC end end LB --> PFS & SXG PFS & SXG --> DNS subgraph INFRA ["HYPERVISOR NODES"] PROX["Proxmox VE"]:::server PI["Pi Zero"]:::server VPS["Cloud VPS"]:::server end DNS --> INFRA subgraph QUBES ["QUBES OS CHAIN"] SN["sys-net"] --> MF["mirage-fw"] --> ST["sys-tailscale"] --> SF["sys-firewall"] --> QB["User Qubes"] end INFRA --> QUBES
System 02 // VPS Container Stack
graph LR classDef proxy fill:#1e1b05,stroke:#f59e0b; classDef app fill:#051a0d,stroke:#10b981; classDef knowledge fill:#1a0a2a,stroke:#a855f7; classDef game fill:#2a0a1a,stroke:#ef4444; INET["Public Web"] --> NPM["Nginx Proxy Manager"]:::proxy subgraph KNOWLEDGE ["KNOWLEDGE BASE"] TRIL["Trilium Notes"]:::knowledge SIY["Siyuan Notes"]:::knowledge HOM["Homepage Dashboard"]:::knowledge end subgraph WEB ["WEB CMS"] WP1["WordPress 01"]:::app WP2["WordPress 02"]:::app DB1[("MariaDB 1")]:::app DB2[("MariaDB 2")]:::app WP1 --- DB1 WP2 --- DB2 end subgraph VDI ["WORKSPACES"] KASM["Kasm Workspaces"]:::app FIRE["Firefox VDI"]:::app end subgraph OPS ["GAMING & OPS"] ASF["Steam Farm"]:::game SCMD["SteamCMD"]:::game PORT["Portainer CE"]:::proxy WATCH["Watchtower"]:::proxy ADG["AdGuard Home"]:::proxy end NPM --> KNOWLEDGE NPM --> WEB NPM --> VDI NPM --> OPS