diff --git a/CHANGELOG.md b/CHANGELOG.md index 3ff74e7..815301a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,31 @@ # CHANGELOG — Set-OPS +## 2026-10-01 (60) — La frontière refuse à voix haute à l'intérieur, et se tait sur l'Internet + +**Demande de l'exploitant** : « pour éviter des délais internes en cas de pépin, les règles qui +ne font pas face à l'extérieur ne doivent pas être en drop mais en reject ». Les machines +refusaient déjà en le disant (nftables `reject … admin-prohibited`, Proxmox `REJECT`). La +FRONTIÈRE jetait en silence sur toutes ses interfaces — c'est elle qu'avait mesurée la sonde au +site (« délai » entre deux zones). + +**Fait** : un `reject` final, journalisé, séquence 950 (après les autorisations, WireGuard et +les silences déclarés), sur chacune des 12 interfaces internes — gestion, transit, l'ancienne +patte du site, les 8 zones du site, la grappe de contrôle, WireGuard. **Le WAN reste muet.** +Sûr : la frontière n'a qu'une règle héritée, sur le WAN — rien d'existant n'est court-circuité ; +ce qui n'était pas autorisé était déjà refusé, seul le MODE du refus change. + +Appliqué (sur accord) : 12 créations, 0 retrait ; plan ensuite vide (340 règles). Après coup : +les 35 machines `connectivite` au vert (9 site, 13 + 13 locataires). Essai négatif : deux flux +NON déclarés — `site-edge-01 → site-forge-01:3000` (« délai » la veille) et Technolibre +`web-frontal-01 → site-forge-01:3000` — échouent en `ECONNREFUSED` en moins d'une +milliseconde ; le flux déclaré témoin (443) passe. + +**Garde** : P53 affinée (refus audible interne exigé, jamais sur le WAN) ; P50 ne compte comme +silence que les `block` ; `test_frontiere_refus.py` sur le vrai devis. **La sonde** classe +désormais `ECONNREFUSED` en AVERTISSEMENT (« service absent, ou refus de la frontière ») : le +`reject` d'OPNsense rend un RST, indiscernable d'un port fermé — et depuis les `seulement_si`, +aucun flux déclaré ne mène plus à un port sans service, ce cas n'est donc plus jamais normal. + ## 2026-10-01 (59) — Chezlepro reconstruite par Set-OPS en 41 minutes, sans un arrêt Lancée par l'exploitant (`make reconstruire-locataire TENANT=OPS-Chezlepro CONFIRMER=true