initial commit

This commit is contained in:
BeauTroll
2025-12-16 04:41:26 +01:00
commit 2b048a09e1
16 changed files with 1719 additions and 0 deletions

109
TODO.md Normal file
View File

@@ -0,0 +1,109 @@
# TODO - Améliorations futures
## Priorité haute
- [ ] Configurer le repository Borg réel (local ou distant)
- [ ] Renseigner les vraies valeurs dans `/etc/borgmatic/.env`
- [ ] Tester le premier backup complet
- [ ] Vérifier que les notifications ntfy fonctionnent
- [ ] Documenter la passphrase et sauvegarder la clé Borg
## Priorité moyenne
- [ ] Configurer un backup du repository Borg lui-même (offsite)
- [ ] Mettre en place un monitoring externe (healthchecks.io ou similaire)
- [ ] Ajouter des hooks PostgreSQL/MySQL si nécessaire
- [ ] Configurer des alertes en cas d'échec de backup
- [ ] Tester une restauration complète sur un système de test
## Améliorations possibles
### Monitoring et alertes
- [ ] Intégration avec healthchecks.io pour monitoring externe
- [ ] Dashboard Grafana pour visualiser l'historique des backups
- [ ] Alertes par email en plus de ntfy
- [ ] Métriques Prometheus pour le monitoring
### Sécurité
- [ ] Rotation automatique des clés de chiffrement
- [ ] Audit des permissions des fichiers de configuration
- [ ] Backup de la clé Borg dans un gestionnaire de secrets (Vaultwarden)
- [ ] Authentification SSH avec clés dédiées
### Performance
- [ ] Optimiser les patterns d'exclusion
- [ ] Ajouter des exclusions pour les caches Docker
- [ ] Tester différents algorithmes de compression
- [ ] Parallélisation des backups si plusieurs destinations
### Backups de bases de données
- [ ] Hook pre-backup pour PostgreSQL (si Gitea/autres utilisent PG)
- [ ] Hook pre-backup pour MySQL/MariaDB (si utilisé)
- [ ] Hook pre-backup pour dump des conteneurs Docker
- [ ] Backup des volumes Docker critiques
### Restauration
- [ ] Documenter la procédure de disaster recovery complète
- [ ] Script de restauration automatisée sur nouveau serveur
- [ ] Tester régulièrement la restauration (tous les 3 mois)
- [ ] Documenter la restauration sélective par service
### Documentation
- [ ] Vidéo tutoriel pour la restauration
- [ ] Runbook pour les situations d'urgence
- [ ] Documentation de l'architecture de backup
- [ ] Guide de migration vers nouveau serveur
### Testing
- [ ] Tests automatisés de la configuration
- [ ] Simulation d'échec et vérification des alertes
- [ ] Test de restauration automatisé
- [ ] CI/CD pour valider les modifications de config
## Notes
### Services à considérer pour backup séparé
Certains services pourraient nécessiter des stratégies de backup spécifiques :
- **Nextcloud** : dump de la base de données avant backup
- **Mailcow** : backup des emails et configuration
- **Gitea** : dump de la base de données Git
- **Vaultwarden** : backup critique à vérifier régulièrement
### Optimisations d'exclusion
Ajouter ces exclusions si nécessaire :
```yaml
- '*/venv/*'
- '*/env/*'
- '*/.git/objects/*' # Si backup de repos Git
- '*/docker/overlay2/*'
- '*/docker/volumes/*' # Déjà géré par les apps
```
### Backup offsite
Considérer :
- BorgBase (service cloud spécialisé Borg)
- Serveur distant dédié
- Stockage cloud chiffré (S3, Backblaze B2)
- Rclone pour copier vers le cloud après backup Borg
### Rotation et rétention
Configuration actuelle :
- 7 daily (1 semaine)
- 4 weekly (1 mois)
- 6 monthly (6 mois)
Considérer :
- Ajouter `keep_yearly: 2` pour archives annuelles
- Ajuster selon l'espace disque disponible