Files
2026-07-19 14:56:31 +02:00

234 lines
7.5 KiB
Markdown
Executable File

# TODO List - Améliorations Futures Homelab
## 📋 Organisation
- **Priorité** : ⭐ = Faible, ⭐⭐ = Moyenne, ⭐⭐⭐ = Élevée
- **Statut** : ✅ = Terminé, 🚧 = En cours, ⏳ = À faire
---
## 🎯 Sécurité & Authentification
### Authentik (⭐⭐⭐)
- [ ] Créer un LXC dédié (CT203 ?) pour Authentik
- [ ] Installer Authentik via Docker
- [ ] Configurer Traefik pour authentik.peis.fr
- [ ] Intégrer Authentik avec Traefik (middleware)
- [ ] Configurer les providers d'authentification :
- [ ] Local (base de données)
- [ ] Google OAuth
- [ ] GitHub OAuth
- [ ] Microsoft OAuth
- [ ] Créer des applications dans Authentik pour :
- [ ] Traefik Dashboard
- [ ] Home Assistant
- [ ] Gitea
- [ ] Status Monitor
- [ ] Configurer le SSO pour tous les services
- [ ] Tester l'authentification unique
### PocketID (⭐⭐)
- [ ] Comprendre l'intégration avec Authentik
- [ ] Configurer PocketID comme fournisseur d'identité
- [ ] Intégrer avec les applications existantes
- [ ] Tester le flux d'authentification
### Sécurité Traefik (⭐⭐⭐)
- [ ] Configurer l'authentification basique pour toutes les routes sensibles
- [ ] Ajouter des middlewares de sécurité :
- [ ] Rate limiting
- [ ] IP whitelisting pour certaines routes
- [ ] Blocking des pays non autorisés
- [ ] Configurer le dashboard Traefik avec authentification forte
---
## 🌐 Services Web
### Status Monitor (CT201)
- [ ] **BUG** : La page n'affiche pas la liste des services (seulement le résumé) - À investiguer
- [x] Version v1.1.0 déployée
- [x] Animation de loading ajoutée
- [x] Boutons de refresh par service
- [x] Historique des changements de statut
- [x] Certificat SSL pour status.peis.fr
- [ ] Ajouter les URLs au format *.peis.fr et IP locale comme liens cliquables
- [ ] Ajouter des icônes pour chaque type de service
- [ ] Ajouter un filtre par type (SSH/HTTP/HTTPS)
- [ ] Ajouter un système de notifications (email/Telegram) en cas de downtime
- [ ] Ajouter un endpoint API pour récupérer le statut en JSON
### Gitea (CT202)
- [x] LXC 202 créé (192.168.0.202, 10Go stockage)
- [x] Docker installé
- [x] Gitea lancé via Docker (ports 3000, 2222)
- [x] Traefik configuré pour git.peis.fr
- [⏳] Attendre la propagation DNS et la génération du certificat SSL
- [ ] Configurer Gitea via l'interface web
- [ ] Créer un compte admin
- [ ] Configurer les dépôts pour :
- [ ] Sauvegardes des configurations Homelab
- [ ] Code du Status Monitor
- [ ] Scripts d'automatisation
- [ ] Documentation
- [ ] Configurer les webhooks pour CI/CD
- [ ] Mettre en place un backup automatique des dépôts
---
## 🔧 Infrastructure
### Containers LXC
- [x] CT202 (git-server) créé et configuré
- [ ] CT203 (authentik) à créer
- [ ] Vérifier la haute disponibilité de tous les containers
- [ ] Documenter le processus de création de nouveaux LXC
### Réseau
- [ ] Configurer un VLAN dédié pour les services publics
- [ ] Mettre en place un firewall entre les containers
- [ ] Documenter le schéma réseau complet
### Backup
- [ ] Configurer des sauvegardes automatiques des LXC (CT201, CT202)
- [ ] Sauvegarder la configuration Traefik
- [ ] Sauvegarder la configuration des services Docker
- [ ] Tester la restauration des sauvegardes
---
## 📊 Monitoring & Observabilité
### Status Monitor Améliorations
- [ ] Ajouter des métriques de performance (temps de réponse, uptime %)
- [ ] Ajouter un graphique d'historique des statuts
- [ ] Implémenter un système de health checks plus avancés
- [ ] Ajouter la vérification des certificats SSL
### Logging Centralisé
- [ ] Déployer un service de logging (Loki, ELK, Graylog)
- [ ] Configurer tous les services pour envoyer leurs logs
- [ ] Créer des dashboards de visualisation
### Métriques
- [ ] Déployer Prometheus + Grafana
- [ ] Configurer lexport des métriques depuis tous les services
- [ ] Créer des dashboards de monitoring
---
## 🔐 Sécurité Réseau
### Pare-feu
- [ ] Configurer un pare-feu perimeter (pfSense, OPNsense)
- [ ] Bloquer les accès non autorisés entre les containers
- [ ] Configurer des règles de NAT pour les services exposés
### VPN
- [ ] Déployer WireGuard ou OpenVPN
- [ ] Configurer l'accès sécurisé au homelab depuis l'extérieur
- [ ] Intégrer avec Authentik pour l'authentification VPN
### Surveillance
- [ ] Déployer un IDS/IPS (Snort, Suricata)
- [ ] Configurer des alertes de sécurité
- [ ] Mettre en place un scanning régulier des vulnérabilités
---
## 📱 Applications Mobiles
- [ ] Créer une application mobile pour le Status Monitor
- [ ] Intégrer avec Home Assistant pour les notifications push
- [ ] Configurer l'accès sécurisé depuis mobile
---
## 🤖 Automatisation
- [ ] Automatiser la création de nouveaux LXC avec Ansible
- [ ] Automatiser le déploiement des services avec Docker Compose
- [ ] Configurer un pipeline CI/CD pour les applications auto-hébergées
- [ ] Mettre en place un système de gestion de configuration (GitOps)
---
## 📚 Documentation
- [ ] Documenter l'architecture complète du homelab
- [ ] Créer un guide de déploiement pour nouveaux services
- [ ] Documenter les procédures de backup/restauration
- [ ] Créer un runbook pour les incidents courants
- [ ] Documenter la configuration réseau
- [ ] Documenter la configuration de sécurité
---
## 🎨 Améliorations UI/UX
### Status Monitor
- [ ] Améliorer le design de la page
- [ ] Ajouter un mode sombre/clair
- [ ] Rendre la page responsive pour mobile
- [ ] Ajouter des animations plus fluides
- [ ] Permettre le tri des services par nom/statut/type
### Tableau de bord unifié
- [ ] Créer un tableau de bord qui agrège :
- [ ] Status Monitor
- [ ] Home Assistant
- [ ] Traefik Dashboard
- [ ] Gitea
- [ ] Authentik
---
## 🔄 Maintenance
- [ ] Mettre à jour régulièrement tous les containers LXC
- [ ] Mettre à jour Docker et les images
- [ ] Vérifier les certificats SSL (renouvellement automatique)
- [ ] Monitorer l'espace disque
- [ ] Vérifier les performances
---
## 📅 Calendrier
### Cette semaine
- [⭐⭐⭐] Résoudre le problème d'affichage du Status Monitor
- [⭐⭐⭐] Terminer la configuration de Gitea (attendre DNS + certificat)
- [⭐⭐] Créer CT203 pour Authentik
### Semaine prochaine
- [⭐⭐⭐] Installer et configurer Authentik
- [⭐⭐] Configurer le SSO pour les services existants
- [⭐⭐] Configurer PocketID
### Dans le mois
- [⭐⭐] Déployer Prometheus + Grafana
- [⭐] Configurer le logging centralisé
- [⭐] Automatiser les sauvegardes
---
## 📝 Notes
### Problèmes connus
1. **Status Monitor** : La page ne charge pas la liste des services. L'API retourne bien 25 services, donc le problème est côté client (JavaScript). À vérifier :
- Erreurs dans la console du navigateur
- Problème de CORS
- Cache navigateur
2. **git.peis.fr** : Le certificat SSL n'est pas encore généré. Attendre que le DNS se propage et qu'une requête arrive sur le domaine.
### Idées futures
- Mettre en place un système de monitoring des certificats SSL (expiration)
- Configurer un reverse proxy pour SSH via Traefik
- Déployer un service de chat auto-hébergé (Matrix, Rocket.Chat)
- Intégrer un système de tickets (Request Tracker)
- Configurer un NAS dédié pour le stockage
---
*Dernière mise à jour : 2026-07-18*