Sécurité¶
Modèle d'accès, inventaire des emplacements de secrets (jamais les valeurs), et pièges connus.
Modèle d'accès¶
- Périmètre réseau : firewall hôte (INPUT DROP, WAN = 22/80/443 + ports mail), LAN de confiance, CrowdSec + bouncer (bannissement auto), AppArmor, AIDE (intégrité).
- Reverse proxy : NPM (TLS) en façade — voir Réseau.
- SSO / Authelia (
172.16.0.39) : IdP OIDC (ex. Immich) + forward-auth (à généraliser). Users dansvolumes/authelia/users_database.yml(bcrypt), règlesaccess_controldansconfiguration.yml, sessions Redis DB5. - VPN : WireGuard (wg-easy) pour l'accès distant aux services internes.
Inventaire des SECRETS — où, pas quoi¶
Aucune valeur de secret dans ce wiki
Ce tableau ne donne que l'emplacement. Ne jamais coller de mots de passe / clés ici.
| Secret | Emplacement |
|---|---|
Master (TZ, PASSWORD, clés API, MAILU_SECRET_KEY…) |
/srv/docker/.env |
| Par stack | compose/<stack>/.env |
| Mailu | compose/mail/mailu.env |
| Home Assistant (DB, notif) | volumes/homeassistant/secrets.yaml |
| Authelia (users bcrypt) | volumes/authelia/users_database.yml |
| Authelia (secrets OIDC/HMAC) | volumes/authelia/configuration.yml (+ éventuels secrets) |
| NPM (certs, base) | volumes/nginx/certs/, volumes/nginx/data/database.sqlite |
WireGuard (PASSWORD_HASH, clés) |
compose/edge/docker-compose.yml, volumes/wireguard/ |
| Healthchecks URLs, SMTP | compose/monitoring/.env (HC_*_URL, SMTP_PASSWORD) |
actions-manager (GEMINI_API_KEY) |
compose/apps/.env |
Pièges sécurité (à corriger)¶
Mot de passe maître réutilisé
Un même mot de passe (${PASSWORD}) est partagé par TimescaleDB, MariaDB, pgAdmin,
Grafana, dockmate, code-server… Une fuite sur un service compromet les autres. À segmenter
(mots de passe distincts par service). Voir Pièges.
À durcir / vérifier
- Authelia : passer le notifier en SMTP mailu ; généraliser le forward-auth sur les apps sensibles actuellement non protégées.
samba-ad-dcenabled mais non configuré (erreurs Winbind) → désactiver si inutile.- NordVPN à mettre à jour ou désactiver si inutilisé.