les trois consoles repondent, chacune derriere sa propre serrure

genese 401 (vestibule, pas d annuaire), chezlepro et technolibre 302 vers leur
Keycloak. Pile identique partout : le GUI et son vestibule en boucle locale,
seule la passerelle publiee.

La regle edge -> ops-01:4180 a manque deux fois pour la meme raison : make flux
ecrit pour l INSTANCE MONTEE, et je l ai lance avec Chezlepro monte. Chez un
locataire ce flux ne traverse pas la frontiere — le SDN de Proxmox tient les
passerelles de zone — donc c est le pare-feu d hote qui le porte. Au site,
c etait la frontiere.

Deux de mes mesures ont menti : un tls=1 qui venait d une AC de 0 octet (le ssh
qui devait la lire avait echoue sans que je regarde son code), et les cles
d hote de TechnoLibre changees a sa reconstruction — je n ai pas touche au
known_hosts de l exploitant.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Crgis8CxCWkAGFA1ecBz3q
This commit is contained in:
Daniel Allaire 2026-09-15 12:31:51 -04:00
parent e93e8f4c1d
commit ae212c0252

View file

@ -1,5 +1,52 @@
# CHANGELOG — Set-OPS
## 2026-09-15 (6) — Les trois consoles repondent, chacune derriere sa propre serrure
console.genese.internal 401 vestibule HTTP Basic (pas d'annuaire)
console.chezlepro.internal 302 -> Keycloak oauth2-proxy, client `setops-console`
console.technolibre.internal 302 -> Keycloak oauth2-proxy, client `setops-console`
Chaque ecosysteme sert sa console, chez lui, sous le nom que son plan lui donne. Le site
avec un mot de passe parce qu'il n'a pas d'annuaire ; les locataires avec le leur.
### La pile, identique partout, verifiee sur la machine
127.0.0.1:8765 le GUI — sa seule serrure est de n'ecouter que la
127.0.0.1:8090 le vestibule boucle locale ; il sert sa page a qui la demande
0.0.0.0:4180 la passerelle — seule publiee, et elle renvoie vers Keycloak
### Ce que le deploiement a demande
Un secret OIDC de 48 caracteres dans chaque voute de locataire (memes gardes : copie de
surete, dechiffrement vers un fichier, relecture, en-tete verifie, empreinte comparee,
clair passe au `shred`), un client `setops-console` dans chaque Keycloak, et la regle
d'hote `edge -> ops-01:4180`.
CETTE DERNIERE A MANQUE DEUX FOIS, POUR LA MEME RAISON. `make flux` ecrit pour l'INSTANCE
MONTEE : lance avec Chezlepro monte, il n'a rien regenere pour TechnoLibre. Le devis etait
juste, le fichier de TechnoLibre n'existait simplement pas — et l'edge rendait `502`
derriere un TLS parfait.
Chez un locataire ce flux ne traverse pas la frontiere (le SDN de Proxmox tient les
passerelles de zone) : c'est le pare-feu d'HOTE qui le porte. Au site, c'etait la
frontiere. Le meme flux, deux couches differentes, selon qui route.
### Deux mesures a moi qui ont menti
**`tls=1` sur TechnoLibre.** J'ai conclu a une chaine invalide. L'AC que j'avais
recuperee faisait **0 octet** : le `ssh` qui devait la lire avait echoue sans que je
regarde son code de sortie. Le certificat servi portait le bon nom et le bon emetteur.
**Les cles d'hote de TechnoLibre ont change** a sa reconstruction, et `known_hosts` porte
encore les anciennes. Je n'y ai pas touche — c'est le fichier de l'exploitant, et une
entree qui change est exactement ce qu'un avertissement doit faire remarquer. La chaine a
donc ete lue dans ce que l'edge SERT, pas dans ce qu'une machine aurait bien voulu me
donner.
Consequence assumee : la console de TechnoLibre est verifiee par son COMPORTEMENT (302
vers son Keycloak) et par le nom de son certificat, pas par une verification complete de
chaine depuis le poste — il y faudrait sa racine, que je n'ai pas pu lire.
## 2026-09-15 (5) — La console chez les locataires, une collision de noms, et un fichier que j'ai ecrase
Les deux locataires declarent desormais leur console derriere leur SSO. Le chemin a