oauth2-proxy fonctionne devant Icinga Web 2 : 302 vers Keycloak, qui federe LDAP. Quatre defauts leves, dont trois du meme motif — un nom construit par convention d'un cote, declare de l'autre. 1. Le secret de cookie etait en base64 STANDARD. oauth2-proxy decode en url-safe : le decodage echoue, il retombe sur la chaine brute et se plaint de sa LONGUEUR, jamais de l'encodage. Garde ajoutee qui refuse + et /. 2. L'issuer etait fabrique (`keycloak.<domaine>`), un nom que rien ne publie. Le plan expose `auth.<domaine>` — c'est ce nom que le DNS resout et que nginx sert. Derive desormais du champ `expose`. 3. Keycloak s'annoncait sous ce meme nom invente : « issuer did not match ». Meme correctif a la source. 4. Le pare-feu est-ouest bloquait l'edge : nginx ne declarait son 443 qu'avec `pair: externe`, que le devis est-ouest saute (il releve de la frontiere). Le flux existait d'un seul cote et la matrice etait satisfaite. nginx declare maintenant aussi son 443 depuis la flotte. obs-01 et mon-01 deployees. 7 cibles Prometheus up, scrutees en TLS a travers cinq zones du VRF. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| defaults | ||
| handlers | ||
| meta | ||
| tasks | ||
| templates | ||
| README.md | ||
serveur_nginx
Installe et configure nginx comme edge interne : reverse proxy et terminaison TLS.
Rôle
- Installe
nginxetssl-cert(certificat auto-signé). - Durcissement de base via
conf.d/99-setops.conf(server_tokens off, TLS 1.2/1.3, taille de corps). - Publie des sites de reverse proxy déclarés dans
serveur_nginx_sites(vide par défaut). - Valide la configuration (
nginx -t) avant de recharger (handlerValider et recharger nginx).
TLS
- Par défaut, certificat auto-signé Debian (
snakeoil) — l'edge répond en HTTPS dès l'installation. serveur_nginx_certificat/serveur_nginx_cle(ou par site) permettent de basculer vers les certificats de l'AC interne / ACME quandserveur_step_caexistera.
Variables principales
| Variable | Défaut | Rôle |
|---|---|---|
serveur_nginx_certificat / _cle |
snakeoil | Certificat TLS par défaut |
serveur_nginx_ssl_protocols |
TLSv1.2 TLSv1.3 |
Protocoles TLS |
serveur_nginx_server_tokens |
off |
Masque la version |
serveur_nginx_taille_max_corps |
16m |
client_max_body_size |
serveur_nginx_redirection_http |
true |
Redirige 80 → 443 |
serveur_nginx_desactiver_defaut |
false |
Retire le site Debian par défaut |
serveur_nginx_sites |
[] |
Sites reverse proxy |
Déclarer un site
serveur_nginx_sites:
- nom: forge
domaine: forge.exemple.internal
amont: "http://10.0.15.11:3000"
# certificat / cle optionnels (sinon snakeoil)
Hors périmètre
- WAF (ModSecurity) — lift externe, à traiter dans une phase dédiée.
- Émission automatique des certificats (dépend de
serveur_step_ca).