journal : frontal proxy + WAF et dorsal des sites, poses chez les deux locataires
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
cac0b75b3a
commit
6d31842b83
1 changed files with 35 additions and 0 deletions
35
CHANGELOG.md
35
CHANGELOG.md
|
|
@ -1,5 +1,40 @@
|
|||
# CHANGELOG — Set-OPS
|
||||
|
||||
## 2026-09-29 (39) — Le web frontal devient reverse proxy + WAF ; le dorsal porte les sites
|
||||
|
||||
**L'architecture, précisée par l'exploitant** : le web **dorsal** est le serveur des sites ;
|
||||
le web **frontal** est le reverse proxy et le WAF devant les services web publics du
|
||||
locataire. L'edge reste la porte des services internes, pour l'administration.
|
||||
|
||||
**Le frontal** (`serveur_web_frontal`, réécrit) :
|
||||
- ses vhosts dérivent des expositions dont le domaine public le désigne
|
||||
(`domaines.yml`, `edge: serveur_web_frontal`) — la même dérivation que l'edge, filtrée sur
|
||||
son groupe ; il ne sert plus rien lui-même ;
|
||||
- **WAF** : ModSecurity v3 (`libnginx-mod-http-modsecurity`) + OWASP CRS 3.3.7
|
||||
(`modsecurity-crs`), paquets Debian. Éprouvé avant d'écrire le rôle, sur le vrai frontal :
|
||||
une injection SQL journalisée (942100, 949110) en détection, refusée (403) en blocage, une
|
||||
requête saine servie dans les deux cas. Un premier essai « prouvait » l'inverse : `return
|
||||
200` s'exécute avant la phase où ModSecurity inspecte — l'essai, pas le WAF, était faux.
|
||||
L'inclusion livrée par Debian ne charge que le moteur : le rôle compose moteur, mode, CRS
|
||||
et exclusions. `DetectionOnly` d'abord ; `On` après lecture du journal ;
|
||||
- serveur par défaut qui refuse tout nom inconnu (444) ; 80 seulement en attendant
|
||||
Let's Encrypt ; sonde **`frontal`** : nginx et configuration, module WAF chargé et CRS
|
||||
présent, chaque exposition publique servie à travers lui.
|
||||
|
||||
**Le dorsal** (`serveur_web_dorsal`) reprend les sites statiques (clone, vhost, CSP) et la
|
||||
sonde **`sites-servis`** ; il est relayé par l'edge (noms internes) ET le frontal (noms
|
||||
publics). Flux : frontal → dorsal 80 ; le frontal ne reçoit plus rien de l'edge.
|
||||
|
||||
**Posé chez les deux locataires** : rôles, pare-feux des deux machines, Proxmox (2 IPSets,
|
||||
4 groupes), Icinga. `frontal` et `sites-servis` au vert (aucune exposition publique ni site
|
||||
déclarés encore) ; frontal → dorsal : 200 ; frontière : rien à changer. Au premier
|
||||
déploiement, `nginx -t` a refusé la configuration AVANT tout rechargement (`server_tokens`
|
||||
déjà actif dans le `nginx.conf` de Debian 13) — nginx a continué de servir l'ancienne.
|
||||
|
||||
**Reste** : le domaine public de chaque locataire désigne encore l'edge (`domaines.yml`) ;
|
||||
le dorsal sert la page d'accueil de Debian à un nom inconnu (un serveur par défaut qui
|
||||
refuse, comme à l'edge et au frontal) ; Let's Encrypt.
|
||||
|
||||
## 2026-09-29 (38) — Frontière appliquée : chaque locataire entre et sort par sa propre adresse
|
||||
|
||||
**Appliqué** (plan relu avant) : 47 créés, 2 retirés ; convergé, 0 écart, 336 règles ; pool
|
||||
|
|
|
|||
Loading…
Reference in a new issue