- metier: sur chaque sonde (47) ; catalogue des vues et services dans serveur_icingaweb2 ; vues Mes outils / Services rendus / Exploitation - contrôles calculés comme serveur_icinga (sauvegardes, socle, matériel, frontière) ; vue vide non posée ; ancien exemple supervision retiré - CHANGELOG 71 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| defaults | ||
| handlers | ||
| meta | ||
| tasks | ||
| templates | ||
| README.md | ||
serveur_web_frontal
Reverse proxy et WAF devant les services web PUBLICS du locataire. C'est la porte
publique : la frontière redirige l'adresse publique que le site attribue au locataire
(80/443) vers lui ; il filtre et relaie. Il ne sert rien lui-même — les sites et les
applications vivent sur le web dorsal (serveur_web_dorsal).
L'edge (serveur_nginx) est l'autre porte : les services internes (*.internal),
pour la zone d'administration. Les deux ne se remplacent pas.
Ce que le rôle fait
- nginx + ModSecurity v3 (
libnginx-mod-http-modsecurity) + OWASP CRS (modsecurity-crs), tous paquets Debian, tout libre ; - compose le WAF (
/etc/nginx/setops-waf/main.conf) : moteur, mode, CRS et ses exclusions — l'inclusion livrée par Debian ne charge que le moteur ; - un vhost par exposition publique : les FQDN que
applications.ymlexpose dans un domaine dontplan/domaines.ymldésigne ce frontal (edge: serveur_web_frontal) — la même dérivation que l'edge ; - un serveur par défaut qui refuse tout nom inconnu (
return 444) ; - la sonde
frontal: nginx actif et configuration valide, WAF chargé et CRS présent, chaque exposition publique servie à travers lui.
Le WAF
serveur_web_frontal_waf_mode: DetectionOnly d'abord : le CRS journalise ce qu'il aurait
bloqué (/var/log/nginx/modsec_audit.log) sans rien refuser. On lit, on ajuste les
exclusions pour les applications réelles, puis On. Éprouvé le 2026-09-29 (Debian 13,
nginx 1.26, CRS 3.3.7) : une injection SQL est journalisée (942100) en détection, refusée
(403) en blocage ; une requête saine passe dans les deux cas.
TLS
En clair (80) tant que le certificat Let's Encrypt des noms publics n'est pas en place.
Validation
ansible-lint profil production + --syntax-check ; sonde frontal.