Files
ENI-projet-piscine/scripts/README.md
Johan LEROY 0462dd01ba feat(scripts): chiffre au repos les volumes Docker de la VM par un coffre LUKS
scripts/coffre-luks.sh pose un coffre LUKS2 dans un fichier image, bind-monte
/var/lib/docker/volumes depuis ce coffre et exige son montage pour que Docker démarre
(drop-in RequiresMountsFor). Migration à froid rejouable, jouée par l'opérateur ; null_resource
Terraform optionnel (coffre_taille). Les archives déposées sur Garage sont chiffrées par SSE-C
(clé GARAGE_SSE_KEY). ADR 0020, runbook et tableaux Garage dans 10-infra.md.

Closes #42
2026-09-24 10:35:31 +02:00

1.2 KiB

Scripts

Outillage local du monorepo. Les taches courantes passent par le Makefile racine.

dast-token.sh

Prépare le scan DAST (.github/workflows/dast.yml) : sur une API déjà démarrée, crée un compte lecteur jetable, lui fait passer le changement de mot de passe obligatoire et écrit son jeton d'accès sur la sortie standard. À lancer depuis apps/backend, contre une base jetable (il y crée deux comptes) : BASE_URL=http://localhost:8000 ../../scripts/dast-token.sh. Nécessite curl, jq et openssl.

coffre-luks.sh

Pose un coffre LUKS2 dans un fichier image creux et bind-monte /var/lib/docker/volumes depuis ce coffre : les volumes des trois environnements de la VM sont chiffrés au repos sans toucher aux fichiers Compose (issue #42, ADR 0020). Rejouable, en root sur la VM : COFFRE_TAILLE=30G COFFRE_MIGRER=1 bash scripts/coffre-luks.sh. Sans COFFRE_MIGRER=1, le coffre est préparé mais les volumes existants ne sont pas déplacés : la migration arrête Docker le temps de la copie. Variables : COFFRE_IMAGE, COFFRE_CLE, COFFRE_MONTAGE, COFFRE_TAILLE. La clé est à sauvegarder hors de la VM : perdue, tout est perdu.