runbook: bifrost 13 VK deployees + pilote redaction-pro + pieges API/permissions + rotations securite

This commit is contained in:
2026-07-18 12:48:15 +00:00
parent 0a934c44a3
commit 9e58f84da7
+47
View File
@@ -60,3 +60,50 @@ Identification : `docker logs bifrost` → IP source 172.27.x.x → container (r
Gabarit du sélecteur : VPS hermes-nabil `/data/nyora/nyora_models.py` + section 7 de
`common/hermes-nabil-images-flyers-navigateur.md`.
---
## DÉPLOIEMENT FAIT (18/07/2026, session vacances)
**13 clés virtuelles créées et actives** : vk-hermes-tt/nyora/perso, vk-n8n, vk-veille-infra,
vk-veille-nexum, vk-redaction-pro, vk-family-help, vk-nyora-veille, vk-gsparc-mezzouna,
vk-reglement-definitif, vk-nyora-doc-api, vk-nyora-notes (les 2 derniers = consommateurs
découverts dans les logs, absents de l'inventaire initial). Valeurs dans
`/volume1/docker/hermes-platform/.env` (`BIFROST_VK_*`). Providers clonés de Nabil-Key.
**Pilote actif : redaction-pro** route sur `vk-redaction-pro` (nginx.conf, backup
`.bak_vk_20260718`). Premier consommateur attribuable dans logs.db. Comparer coût/qualité à J+7.
### Pièges rencontrés
- **L'API governance IGNORE `allow_all_keys` en POST ET en PUT** (stocké 0) → fix obligatoire :
`UPDATE governance_virtual_key_provider_configs SET allow_all_keys=1 WHERE virtual_key_id IN
(SELECT id FROM governance_virtual_keys WHERE name LIKE 'vk-%')` **+ restart bifrost**
(config governance cachée en mémoire, l'UPDATE seul ne suffit pas). Sans ça :
400 "no keys found for provider".
- **mcp-nas ne peut pas écrire les fichiers root de /mnt/docker** → édition via container
éphémère : `docker run --rm -v /volume1/docker:/w alpine sh -c '...'` (clé lue depuis .env
dans le container, jamais affichée).
- **SSH mcp-nas → NAS** : la clé existe dans /root/.ssh/mcp-nas-bestof avec alias **`ssh nas-host`**
(config déjà en place — ne pas conclure trop vite à la clé perdue).
- bifrost-proxy log des [emerg] "host not found in upstream" à chaque boot NAS (course avec
bifrost) mais **s'auto-répare** via restart:always ~20 min après. Pas d'action requise,
ne pas paniquer sur ces logs.
- `/volume1/docker/hermes-platform/.env` est en **777** (piège chmod documenté) — à corriger
avec précaution (vérifier qui lit le fichier et sous quel uid) au retour.
### 401 : état après enquête
Émetteurs (96 h) : redaction-pro (31 — clé pourtant VALIDE : autre chemin de code à trouver,
l'attribution par clé rendra le coupable visible), nyora-doc-api (12), nyora-notes (8),
veille-backend (3), n8n (2). Pas une clé morte unique : plusieurs chemins de code défaillants.
La bascule par consommateur est le bon outil de diagnostic.
### SÉCURITÉ — rotations requises (exposition en clair le 18/07)
1. **Clé provider OpenCode** (BIFROST_OPENCODE_KEY) — affichée dans un traceback.
2. **Token Cloudflare Workers AI** (redaction-pro nginx.conf, location /api/cf/) — affiché
malgré masquage partiel. Rotation des deux au retour + mise à jour .env/nginx.conf.
### Reste à faire (retour de vacances)
- Basculer hermes ×3 (localiser où chaque agent stocke sa clé Bearer), n8n (credential),
gsparc, family-help, nyora-veille, veille-infra/nexum, doc-api, notes → chacun sa clé.
- Élucider le chemin 401 de redaction-pro (la moitié de son trafic échoue).
- J+7 : tableau coût/consommateur (requête de référence ci-dessus) puis définition des besoins.