61da379b12457417b024bfef05bd82966e3cfc7b
Homelab
If you are viewing on GitHub, you can view this repo on my self-hosted instance of Gitea here.
📋 Table of Contents
🖥️ Hardware
| Component | Model / Specs | Role |
|---|---|---|
| Firewall | pfsense on pve-01 | Edge firewall, DHCP |
| Switch | Arista DCS-7010T | Core / L3 switch |
| PVE-01 | HPE ProLiant DL360 Gen 9 2x Intel Xeon E5-2673 v3 128GB RAM |
Virtualisation server |
| K3s-CP-01 | Raspberry Pi 5 ARM Cortex-A76 8GB RAM |
Kubernetes control plane |
| K3s-CP-02 | Raspberry Pi 5 ARM Cortex-A76 8GB RAM |
Kubernetes control plane |
| K3s-CP-03 | Raspberry Pi 5 ARM Cortex-A76 8GB RAM |
Kubernetes control plane |
| K3s-Worker-01 | HP EliteDesk G4 705 AMD Ryzen 5 PRO 2400GE 48GB RAM |
Kubernetes worker |
| K3s-Worker-02 | HP EliteDesk G4 800 Intel i5 8600 16GB RAM |
Kubernetes worker |
| K3s-Worker-03 | HP EliteDesk G4 800 Intel i5 8600 16GB RAM |
Kubernetes worker |
| TrueNAS | AMD FX-6100 24GB RAM 8TB Storage |
Storage |
🚀 Services, Applications & Deployments
Infrastructure
- Proxmox VE - Type 1 hypervisor
- Portainer - Kubernetes & Docker management GUI
- Kubernetes - Container orchestration
- Docker - Containerisation
Networking
- pfSense - Edge firewall, DHCP
- AdGuard Home - DNS
- Pangolin - Proxy for external HTTP traffic
- Traefik - Proxy for internal HTTP trafic to kubernetes
- Nginx - Proxy for internal HTTP traffic
- Tailscale - Remote access via VPN
Monitoring
- Grafana
- Prometheus
Security
- Vaultwarden - Password manager
- Authentik - SSO and OIDC
- CrowdSec - Intrusion prevention
- Wazuh - Security monitoring and SIEM
- Cert Manager - Automated SSL/TLS certificate management
Git & CI/CD
- Gitea - Self-hosted Git service
- ArgoCD - Continuous delivery tool for Kubernetes deployments
Storage
- Longhorn - Distributed block storage system for Kubernetes persistent volumes
- TrueNAS - NAS solution
Media Stack
- Jellyfin - Streaming
- Jellyseer - Requests
- Radarr - Movie index manager
- Sonarr - Show index manager
- Prowlarr - Torrent manager
- qBittorrent - 😉
Communication
- Mailcow - mail
- Synapse - Self-hosted, decentralised communication
Games
- Pelican - Game panel
- Wings - Game servers
🌐 Network Architecture
Network Topology:
Internet
↓
pfSense (10.77.0.1) - Edge Firewall/Router
↓
Arista DCS-7010T - Core L3 Switch
↓
├─ VLAN 1 (10.77.0.0/16) - Default/LAN
├─ VLAN 10 (10.20.10.0/24) - Management
├─ VLAN 20 (10.20.20.0/24) - DMZ (Public Services)
├─ VLAN 30 (10.20.30.0/24) - Games/Wings
└─ VLAN 40 (10.20.40.0/24) - Kubernetes Cluster
Key Features:
- Segmented VLANs for security and organisation
- Arista DCS-7010T providing L3 switching
- pfSense handling firewall rules and DHCP
- AdGuard Home for DNS filtering across all VLANs Security Measures:
- DMZ isolation for internet-facing services
- Kubernetes workloads on isolated VLAN
- Firewall rules controlling inter-VLAN traffic
- CrowdSec IPS monitoring all traffic incoming traffic
- Wazuh SIEM for security event analysis
Detailed network documentation: docs/networking.md
🔗 Links
- Personal Website: https://dontddos.me
- GitHub: https://github.com/ddosian
- Self-hosted Gitea: https://gitea.dontddos.me
Description
Languages
Shell
100%