Set-OPS-Public/docs
Daniel Allaire d3ba520500 insemination : declarer le lien, l'emettre d'un seul cote, et un test rouge
L'insemination avait un nom depuis ce matin ; elle n'avait pas de flux. Deux
declarations, aux deux bouts, et rien d'autre :

    serveur_ops_site     egress  22/tcp -> serveur_ops_tenant
    serveur_ops_tenant   ingress 22/tcp <- runner_site         partage: true

ETROIT PAR CONSTRUCTION : il vise le GROUPE `serveur_ops_tenant`, qu'un ecosysteme
ne pose que sur une machine. Au socle, il aurait ouvert le SSH du site vers toute
la flotte du tenant.

L'en-tete disait « ce role n'entre JAMAIS chez un tenant ». Frontiere intenable :
`creer-vm` exige `_instance-requise`, et le runner du site avait deja du basculer
son symlink `instance` sur OPS-Chezlepro pour materialiser ses VM. Declarer ne cree
pas ce pouvoir — ca rend limitable un pouvoir qui s'exercait sans borne. Ce qui
reste interdit n'est pas une regle mais un FAIT : il n'a pas la voute du tenant.

LA REGLE EST EMISE D'UN SEUL COTE, et pas celui qu'on croit. Le paquet penetre le
pare-feu par la patte du SITE, pas par le transit : la regle appartient au cote
site du devis. L'emettre aussi depuis l'`ingress` du tenant aurait produit une
seconde regle sur la mauvaise interface — jamais evaluee, indiscernable d'une regle
utile. La declaration du tenant pose sa regle nftables, et elle seule :

    ip saddr { 10.0.31.11 } tcp dport 22 accept

L'adresse DERIVE du plan du site. Ecrite a la main, elle aurait survecu au prochain
deplacement du runner sans bruit — le site a deja deplace ses machines le 08-25.

Plan de la frontiere : 2 objets a creer, 0 a retirer, 126 inchanges. RIEN D'APPLIQUE.

P41 APPLIQUEE AU PLAN DU SITE : `resoudre_flux` en avait besoin a son tour ; les
trois lecteurs demenagent dans `underlay` et `devis_opnsense` delegue.

DEUX GARDES ONT TRAVAILLE : P33 a refuse `ingress 22` sur un hote portant deja le
sshd du socle (reponse : `partage: true`, comme `serveur_backup`), et le devis a
refuse d'emettre vers un alias vide.

UN TEST ROUGE DEPUIS TROIS JOURS. `test_adressage_derive` construisait un site avec
un `index` — or un SITE n'en a pas depuis add94f2 (08-25), remplace par
`bande_basse_de`. Invisible parce que le geste quotidien est `make prouver`, qui ne
joue pas les tests. Remis sur le contrat actuel, avec sa contrepartie : sans
`bande_basse_de`, aucun chevauchement n'est tolere.

make verifier : vert. make prouver : CONFORME, 52 OK, 0 echec.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019f91zs9SDdwSzL2CVei6on
2026-08-28 13:09:28 -04:00
..
audit insemination : declarer le lien, l'emettre d'un seul cote, et un test rouge 2026-08-28 13:09:28 -04:00
img docs : figures annotées des 7 autres vues du GUI (série complète) 2026-07-28 13:48:36 -04:00
modeles_vm mtu : le 1450 de la zone n'atteignait pas les invites 2026-08-10 17:54:03 -04:00
architecture-set-ops.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
authentification.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
autorisation.md sauvegarde : le catalogue derive du groupe, et P36 le prouve 2026-08-11 20:50:46 -04:00
bindings-conception.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
carte-set-ops.md journal : les cinq commits du 27 n'avaient pas d'entree 2026-08-28 10:55:59 -04:00
catalogue-services.md runner : serveur_ops_tenant — le runner d'un tenant recoit enfin sa voute 2026-08-26 15:30:51 -04:00
config-proxmox.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
couches-deploiement.yml runner : serveur_ops_tenant — le runner d'un tenant recoit enfin sa voute 2026-08-26 15:30:51 -04:00
courriel-conception.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
decisions-architecture.md genome : la forge du SITE fait autorite (D-81), et make genome-etat le verifie 2026-08-26 09:17:24 -04:00
dependances-groupes.yml runner : serveur_ops_tenant — le runner d'un tenant recoit enfin sa voute 2026-08-26 15:30:51 -04:00
devis-services.md devis : make versions-mesurer — l'ecart avec l'amont devient lisible 2026-08-10 23:02:16 -04:00
dimensionnement-ressources.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
dns-interne.md resolveur : un par tenant, et non plus un par machine 2026-08-24 16:59:34 -04:00
ecosysteme-chezlepro.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
filiation-emancipation.md filiation : nommer l'insemination, et rendre a l'humain l'acte d'emancipation 2026-08-28 12:31:57 -04:00
flux-conception.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
frontiere-opnsense.md resolveur : un par tenant, et non plus un par machine 2026-08-24 16:59:34 -04:00
frontiere-physique-virtuel.md underlay : la frontiere entre les deux mondes, et l'instrument qui la mesure 2026-08-22 16:31:35 -04:00
hebergeur-exploitation.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
identite-sso.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
implanter-un-tenant-sur-un-site.md portee : les trois devis d'un site partagent enfin la meme regle 2026-08-18 16:38:30 -04:00
integrations-vm.md resolveur : un par tenant, et non plus un par machine 2026-08-24 16:59:34 -04:00
intrants-base-gui-conception.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
intrants-communs.md resolveur : un par tenant, et non plus un par machine 2026-08-24 16:59:34 -04:00
meta-classe.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
migration-tenant.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
MISE-A-JOUR-CODEX-CLAUDE.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
multi-instances.md adressage : le decalage de +10 est retire, l'index se lit dans l'adresse 2026-08-12 16:16:08 -04:00
nomenclature-vm.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
plan-et-generation.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
positionnement.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
pouvoirs-set-ops.md resolveur : un par tenant, et non plus un par machine 2026-08-24 16:59:34 -04:00
preparer-un-site-hebergeur.md D-78 : destination ou chemin — et le VLAN 50 pour eviter une collision 2026-08-12 17:50:05 -04:00
procedure-template-debian13-proxmox.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
registre-flux.md insemination : declarer le lien, l'emettre d'un seul cote, et un test rouge 2026-08-28 13:09:28 -04:00
runbooks-exploitation.md D-78 : destination ou chemin — et le VLAN 50 pour eviter une collision 2026-08-12 17:50:05 -04:00
sdn-evpn.md adressage : le decalage de +10 est retire, l'index se lit dans l'adresse 2026-08-12 16:16:08 -04:00
theme-forgejo-hors-flotte.md preuve : P34 — chaque document declare son lecteur (D-74) 2026-08-10 07:53:04 -04:00
vm-lifecycle.md doc : la machine d'epreuve jetable — une doctrine qui n'avait pas son instrument 2026-08-13 11:47:12 -04:00