Deux machines, deux rôles distincts.
| Machine | Rôle | Exposition |
|---|---|---|
| Serveur principal | Services web en conteneurs | Internet, via reverse proxy |
| Raspberry Pi | DNS local, dépôt de sauvegarde, nœud LoRa, médias | Réseau local uniquement |
Flux entre les machines
- Sauvegarde nocturne : Plakar sur le serveur principal envoie vers le dépôt du Raspberry Pi en SFTP. Les bases sont exportées en SQL avant chaque sauvegarde. Détails : Sauvegarde.
- DNS : AdGuard Home sur le Raspberry Pi réécrit le domaine public vers l'IP locale du serveur (contournement du hairpin NAT de la box).
- * Gestion Docker : un Portainer central sur le serveur principal pilote les deux machines, le Raspberry Pi par un agent. Détails : Portainer.
Outils communs
- Portainer : gestion Docker des deux machines.
- Oh My Bash : configuration du shell Bash.
- Lynis : audit de sécurité nocturne des deux machines.
Règles communes
Mises à jour des conteneurs
- Mise à jour automatique chaque nuit par Watchtower.
- Une base de données est toujours épinglée sur une version majeure encore supportée : la mise à jour automatique ne lui apporte que des correctifs mineurs.
- Le reverse proxy, l'authentification et toute image en latest critique sont exclus de la mise à jour automatique et mis à jour à la main, après lecture des notes de version.
Python
- Aucun pip install dans le Python système, ni en root ni en utilisateur : une montée de version de Debian casse tout ce qui a été installé ainsi.
- Outils en ligne de commande : pipx.
- Scripts qui ont besoin de modules : un venv dans leur dossier.
Documentation
Pas d'IP, de domaine, de nom d'utilisateur, de secret ni de vulnérabilité connue dans ce wiki. Les valeurs réelles sont notées <ENTRE_CHEVRONS>.