Aller au contenu
maxime.bertrand homelab

Architecture

Vue d'ensemble de l'architecture

Les machines, les couches logicielles et ce qui est exposé ou non.

#architecture 2 min de lecture

Principes

  1. Tout en code : aucune VM, aucun enregistrement DNS créé à la main. OpenTofu pour l’infrastructure, Ansible pour la configuration.
  2. Exposition minimale : la vitrine passe par Cloudflare Tunnel ; les services personnels et la page de supervision passent par un seul port entrant, filtré par le pare-feu puis par un WAF, avec authentification unique. L’administration n’est accessible que par le VPN.
  3. Séparation des zones : réseau domestique (Freebox) et homelab (OPNsense) sont isolés ; le homelab est découpé en VLAN, et chaque zone n’a accès qu’à ce dont elle a besoin.
  4. Tout se restaure : sauvegarde chiffrée hors site chaque nuit, relue et comparée automatiquement ; procédures dans runbooks/, incidents analysés dans postmortems/.

Couches

CoucheOutils
MatérielDell PowerEdge T330 (serveur unique, carte graphique GTX 1050 confiée à la VM des applications : ADR 0024), Dell PowerEdge R610 (LAB allumé à la demande, à venir)
Hyperviseur & stockageProxmox VE, ZFS RAIDZ2
Réseau & sécuritéOPNsense (virtualisé), VLAN, WireGuard, BunkerWeb (WAF), CrowdSec, Cloudflare (DNS, tunnel de la vitrine)
IdentitéLLDAP (annuaire), Authelia (SSO et double authentification), page des comptes (invitations sans mot de passe transmis)
ProvisionnementOpenTofu (bpg/proxmox, opnsense, cloudflare), Ansible, lancé aussi depuis Semaphore UI
ApplicationsDocker Compose dans des VM dédiées par zone
SecretsCoffre OpenBao (SSO, AppRole, audit), SOPS + age pour le démarrage
ObservabilitéPrometheus, Alertmanager, NOC sur mesure, Grafana (interne), VictoriaLogs (journaux centralisés), ntfy (alertes sur téléphone), veille des connexions (adresses inconnues), sonde externe UptimeRobot
Services d’infraNetBox (source de vérité), Semaphore UI (lancement des playbooks)

Les choix structurants sont expliqués dans les ADR, en particulier l’ADR 0010 (un seul serveur), l’ADR 0008 (publication des services), l’ADR 0014 (supervision), l’ADR 0015 (Semaphore), l’ADR 0016 (coffre à secrets), l’ADR 0017 (invitations et page des comptes), l’ADR 0018 (droits par groupes et quotas), l’ADR 0019 (sauvegardes hors site) et l’ADR 0020 (journaux centralisés).

Ce qui est exposé

ServiceDomaineAccès
Site vitrinemaximebertrand.netPublic (Cloudflare Tunnel)
NOC (page de supervision sur mesure)noc.maximebertrand.netPublic, derrière OPNsense, WAF et SSO ; lecture seule
Notifications d’alerte (ntfy)ntfy.maximebertrand.netPublic, derrière OPNsense et WAF ; comptes dédiés, tout refusé par défaut
Services personnels (photos, fichiers)sous-domaines de maximebertrand.netPublic, derrière OPNsense, WAF et SSO avec double authentification
Administration, annuaire, outils internes*.home.maximebertrand.net (DNS interne uniquement)VPN uniquement ; SSO en plus pour la page des comptes