Set-OPS-Public/roles/serveur_ops/meta/flux.yml

67 lines
3.5 KiB
YAML
Raw Normal View History

2026-08-23 11:58:10 -04:00
---
# Flux réseau du poste d'exploitation. Voir docs/flux-conception.md.
#
# Le poste est presque tout en sortie : il va chercher son génome, puis il pilote. Rien
# ne s'y connecte, sinon l'administration elle-même.
flux:
# LA CONSOLE D'EXPLOITATION, PUBLIEE PAR L'EDGE DE L'ECOSYSTEME (2026-09-14).
#
# `[edge, admin]` — la meme paire que `serveur_grafana` et `serveur_icingaweb2`, et
# pour la meme raison : sans edge, un ecosysteme n'aurait plus de console du tout.
#
# CE PORT N'EST PAS CELUI DU GUI. Le GUI ecoute `127.0.0.1:8765` et n'est joignable de
# nulle part ailleurs — c'est sa seule serrure, il sert sa page a qui la demande. Ce
# qui s'ouvre ici est le NGINX qui authentifie devant.
#
# LA REGLE N'EST EMISE QUE SI LE PLAN L'EXPOSE : un runner qui ne publie pas sa console
# n'a pas ce port ouvert, et `serveur_ops_gui_actif` reste faux.
#
# SEULEMENT EN MODE `locale` (2026-09-30) : c'est la que nginx EST le vestibule et ecoute
# sur le reseau. En `oidc`, il est lie a 127.0.0.1 (voir `serveur_ops_gui_nginx_bind`) et
# la regle etait « sans objet » — desormais elle n'est plus emise du tout.
- sens: ingress
port: 8090
protocole: tcp
pair: [edge, admin]
seulement_si: {variable: serveur_ops_gui_auth, egal: locale}
chiffrement: clair
raison: >-
Console d'exploitation servie par l'edge (TLS terminé à l'edge), et joignable
depuis le plan d'administration là où il n'y a pas d'edge. Le GUI lui-même reste
sur la boucle locale : c'est nginx qui authentifie devant.
2026-08-23 11:58:10 -04:00
- sens: egress
port: 443
protocole: tcp
pair: edge
chiffrement: tls-requis
raison: "Cloner et resynchroniser le génome depuis la forge de l'écosystème."
- sens: egress
port: 22
protocole: tcp
pair: flotte
chiffrement: ssh
raison: "Piloter la flotte — c'est la raison d'être du poste."
# UN LOCATAIRE NE PARLE PAS A L'HYPERVISEUR — ET CE N'EST PLUS DECLARE ICI (2026-10-05).
#
# Ce fichier portait une sortie 8006 vers `externe` : « API de l'hyperviseur : créer et
# cloner les VM d'un écosystème descendant ». Mesure du 2026-10-05, depuis trois machines de
# deux locataires : AUCUN paquet ne passait. La frontiere rendait cette sortie vers « tout
# sauf les plages privees », et les hyperviseurs sont en plages privees ; elle refusait donc
# (journal : `block`, refus audible du lien de transit). La regle etait morte, et sa lecture
# mentait : elle disait qu'un locataire pouvait creer des VM.
#
# Materialiser est un pouvoir du SITE (`serveur_ops_site`, sa voute porte l'API Proxmox).
# Une emancipation qui en aurait besoin se declarera le jour ou elle existera.
# LE GENOME SE CLONE A LA FORGE DU SITE — ET CE N'EST PLUS DECLARE ICI (2026-10-05).
#
# Ce fichier portait une sortie 443 vers `voisins_site`, ecrite quand la forge du genome
# vivait chez un locataire voisin (2026-08-24). Elle est au SITE depuis ; le pair n'avait
# pas suivi. `voisins_site` vu d'un locataire, ce sont les AUTRES locataires : la frontiere
# ouvrait donc le 443 du runner de chaque locataire vers tout le supernet de l'autre — un
# passage entre locataires que rien ne justifiait, la ou elle doit refuser par defaut.
# Trouve en confrontant la frontiere a la face reseau (docs/conception-contextes.md).
#
# Le clonage passe par la regle que declare `serveur_forge_site` (son entree depuis
# `voisins_site`, vue du site : ses locataires). La forge DE TRAVAIL d'un ecosysteme,
# celle qui sert ses gens, reste un service du tenant, sans rapport avec ce flux.