Lyon 8ᵉ · Lyon et 16 communes de la métropole
Un souci ? Décrivez-le en 30 secondes ↗

Laboratoire & Architecture interne · Architecture active & maintenue

Environnement Cloud privé auto-hébergé (Nextcloud, Vaultwarden, Immich) et défense périmétrique

Services collaboratifs conteneurisés derrière Reverse Proxy TLS, authentification forte et CrowdSec

Projet personnel, pas une référence client.Architecture déployée et exploitée en conditions réelles dans le laboratoire JASS. Les noms de sous-domaines internes, clés et journaux d’accès sont volontairement masqués.

Contexte

Remplacer la dispersion de données sur des services tiers par des briques open-source auto-hébergées exige une rigueur particulière : exposer un service web mal durci sur Internet l’expose immédiatement aux robots de scan et aux tentatives de force brute.

Besoin

Construire une pile auto-hébergée propre, rapide et maintenable où chaque service est isolé dans son réseau Docker interne, derrière un point d’entrée unique chiffré et surveillé.

Architecture

Seul le reverse proxy écoute en frontal (443/TCP) et gère les certificats TLS. Les conteneurs applicatifs (Nextcloud + PostgreSQL + Redis, Vaultwarden, Immich, Gitea) résident sur des réseaux Docker internes segmentés sans port exposé directement sur l’hôte. Les journaux du reverse proxy sont analysés en temps réel par CrowdSec pour bannir les adresses IP malveillantes, et les interfaces sensibles sont protégées par authentification multifacteur.

SCHÉMA D’ARCHITECTURE · CLOUD PRIVÉ CONTENEURISÉ & DÉFENSEZÉRO PORT DB EXPOSÉ
Schéma d’architecture Cloud privé avec Reverse Proxy TLS, CrowdSec, Authelia et conteneurs isolésTERMINAUX CLIENTS• PC / Mac (Sync)• iOS / Android• Navigateur HTTPSTLS 1.3 strict (443/TCP)FRONTAL & FILTRAGEReverse Proxy TLSHSTS · En-têtes durcisCrowdSec (IPS)Analyse logs & blocage IPAuthelia / MFA 2FAPortail SSO & TOTP/WebAuthnRÉSEAUX DOCKER INTERNES ISOLÉSNextcloud + PostgreSQL + RedisFichiers, Agendas CalDAV, Contacts CardDAVVaultwarden (Coffre de secrets)Inscriptions fermées · Accès 2FA obligatoireImmich & GiteaPhotothèque privée & dépôts Git internes
Figure 2 — Flux entrant unique en HTTPS filtré par CrowdSec et authentification multifacteur, sans aucune exposition directe des bases de données.

Briques mises en œuvre.

Technologies du projet Environnement Cloud privé auto-hébergé (Nextcloud, Vaultwarden, Immich) et défense périmétrique
TechnologieRôleStatut
Nextcloud + PostgreSQL + RedisSynchronisation de fichiers, agendas CalDAV et contacts CardDAVDéployable sur périmètre client
VaultwardenServeur de coffre-fort de mots de passe léger compatible clients BitwardenDéployable sur périmètre client
Reverse Proxy TLS (Caddy / Traefik)Terminaison HTTPS automatique et en-têtes de sécuritéMaîtrisé en production/lab
CrowdSec & AutheliaAnalyse comportementale des logs et portail SSO / 2FAMaîtrisé en production/lab
Immich & GiteaSauvegarde photo automatisée et gestion de dépôts de code Git privésMaîtrisé en production/lab

Décisions techniques

  • Adoption de PostgreSQL et d’un cache mémoire Redis pour Nextcloud afin d’éviter les lenteurs constatées avec les configurations par défaut (SQLite/MySQL non optimisé) lors de la synchronisation de milliers de petits fichiers.
  • Verrouillage des inscriptions publiques sur Vaultwarden (`SIGNUPS_ALLOWED=false`) après création des comptes autorisés, et accès à la page `/admin` restreint au réseau local/VPN.
  • Épinglage des versions d’images Docker (tags explicites plutôt que `:latest` aveugle) pour contrôler les montées de version après sauvegarde préalable.

Précautions de sécurité

  • Aucun port de base de données (5432, 6379) n’est publié sur les interfaces réseau de l’hôte (`expose` interne uniquement).
  • Application des en-têtes HTTP de sécurité (HSTS, X-Content-Type-Options, X-Frame-Options, Referrer-Policy).
  • Sauvegarde quotidienne cohérente : dump transactionnel PostgreSQL (`pg_dump`) couplé à l’archivage chiffré des volumes de fichiers.

Résultat constaté

Synchronisation fluide sur ordinateurs et smartphones (iOS/Android), gestion centralisée des secrets et visibilité claire sur les tentatives d’intrusion bloquées en amont.

Compromis et limites connues

Pour une entreprise, l’exposition directe sur Internet d’outils internes n’est pas toujours nécessaire : lorsqu’un service n’a pas besoin d’être public, je privilégie un accès exclusivement via VPN WireGuard plutôt qu’une exposition publique.

Prochaine étape

Étudier une architecture proche pour votre structure ?

Décrivez votre cas : je réponds franchement, y compris quand la réparation ne vaut pas le coup.

AppelerMa panne