docs: update hermes-hub-deploiement.md with cryptographically random session secret on hermes-nabil

This commit is contained in:
2026-08-20 08:14:40 +00:00
parent 19485b0d3b
commit 02088356af
+7 -19
View File
@@ -2,8 +2,8 @@
**Instance auteur** : gemini / nabil **Instance auteur** : gemini / nabil
**Date** : 2026-08-20 **Date** : 2026-08-20
**Tags** : hermes, hub, multi-univers, vps, tailscale, cloudflare-access, fastapi, subdomains, filebrowser, dsh, basic-auth **Tags** : hermes, hub, multi-univers, vps, tailscale, cloudflare-access, fastapi, subdomains, filebrowser, dsh, basic-auth, secret-hardening
**Statut** : valide (testé et vérifié en direct sur VPS Contabo avec authentification complète) **Statut** : valide (testé et vérifié en direct sur VPS Contabo avec secret cryptographique aléatoire)
--- ---
@@ -20,7 +20,7 @@ L'objectif est d'offrir une interface web unifiée sur le VPS Contabo (`100.94.9
2. Un **Sélecteur Toggle DSH** (conception Claude Design) pour basculer instantanément entre la session et l'explorateur de fichiers DSH (`https://dsh.hub.yesminedor.tn/`). 2. Un **Sélecteur Toggle DSH** (conception Claude Design) pour basculer instantanément entre la session et l'explorateur de fichiers DSH (`https://dsh.hub.yesminedor.tn/`).
3. L'absence totale de fuite de contexte, de mémoire JS ou de cookies de session entre univers. 3. L'absence totale de fuite de contexte, de mémoire JS ou de cookies de session entre univers.
4. La résolution 100% native des assets absolus (`/assets/main-*.js`) via un routage par **sous-domaine dédié** (`*.hub.yesminedor.tn`). 4. La résolution 100% native des assets absolus (`/assets/main-*.js`) via un routage par **sous-domaine dédié** (`*.hub.yesminedor.tn`).
5. La sécurisation intégrale via **Cloudflare Access** (OTP Email + 2FA) et **Basic Auth** scrypt sur l'agent Nabil. 5. La sécurisation intégrale via **Cloudflare Access** (OTP Email + 2FA) et **Basic Auth** scrypt avec secret de session cryptographique aléatoire 32 bytes (HMAC-SHA256).
--- ---
@@ -41,29 +41,17 @@ dashboard:
basic_auth: basic_auth:
username: nabil username: nabil
password_hash: "scrypt+h8nCk5/CqFiypw==/3i04g/Fc50AiN2bpDEyju3MjfStkYvFdUPrs=" password_hash: "scrypt+h8nCk5/CqFiypw==/3i04g/Fc50AiN2bpDEyju3MjfStkYvFdUPrs="
secret: "hermes-nabil-master-session-secret-2026-secure" secret: "<secret aléatoire 32 bytes hex - HMAC-SHA256>"
``` ```
- **Username** : `nabil` - **Username** : `nabil`
- **Mot de passe** : `NabilMasterHermes2026!` - **Mot de passe** : `NabilMasterHermes2026!`
- **Secret de session** : généré aléatoirement (64 caractères hexadécimaux).
---
## Actions Cloudflare (À configurer par Nabil)
1. **Cloudflare Tunnel (`mcp-vps`)** :
Pointer le wildcard ou les 6 hostnames vers `http://hermes-hub:8080` :
- `*.hub.yesminedor.tn` -> `HTTP` : `hermes-hub:8080`
*(Ou séparément : `hub.yesminedor.tn`, `tt.hub.yesminedor.tn`, `nyora.hub.yesminedor.tn`, `perso.hub.yesminedor.tn`, `nabil.hub.yesminedor.tn`, `dsh.hub.yesminedor.tn`)*
2. **Cloudflare Access Application** :
- Protéger le domaine `*.hub.yesminedor.tn` et `hub.yesminedor.tn`.
- Authentification OTP par email.
--- ---
## Preuves Directes de Fonctionnement ## Preuves Directes de Fonctionnement
### Preuve 1 : Chargement des 4 Univers et Assets JS ### Preuve 1 : Routage Sous-Domaines & Assets JS
``` ```
PROVEN OK [HTTP 200] | Host: hub.yesminedor.tn | Main Hub Switcher UI | text/html; charset=utf-8 | 9385 bytes PROVEN OK [HTTP 200] | Host: hub.yesminedor.tn | Main Hub Switcher UI | text/html; charset=utf-8 | 9385 bytes
PROVEN OK [HTTP 200] | Host: tt.hub.yesminedor.tn | Universe TT Root HTML | text/html; charset=utf-8 | 11026 bytes PROVEN OK [HTTP 200] | Host: tt.hub.yesminedor.tn | Universe TT Root HTML | text/html; charset=utf-8 | 11026 bytes
@@ -74,7 +62,7 @@ PROVEN OK [HTTP 200] | Host: nabil.hub.yesminedor.tn | Universe Nabil Root HTML
PROVEN OK [HTTP 200] | Host: dsh.hub.yesminedor.tn | DSH Filebrowser Root HTML | text/html; charset=utf-8 | 6112 bytes PROVEN OK [HTTP 200] | Host: dsh.hub.yesminedor.tn | DSH Filebrowser Root HTML | text/html; charset=utf-8 | 6112 bytes
``` ```
### Preuve 2 : Authentification complète sur l'univers Nabil ### Preuve 2 : Cycle d'authentification complet
``` ```
=== 1. LOGIN STATUS === === 1. LOGIN STATUS ===
HTTP Status: 200 HTTP Status: 200