This repository has been archived on 2026-06-26. You can view files and clone it, but cannot push or open issues or pull requests.
Set-OPS/roles/serveurs_nginx/README.md
Daniel Allaire 8f6de3ebe2 Construire l'ecosysteme de services et outiller l'inventaire
Registres (source unique):
- docs/nomenclature.yml: domaines, VMID, plan d'adressage 10.1.0.0/16 segmente.
- docs/bases-donnees.yml: bases applicatives (1 appli -> 1 base -> 1 owner -> 1 DSN).

Roles de service:
- Reseau/edge/PKI/mail: nginx, step_ca, sendmail.
- Donnees/identite: postgresql (consommateur du registre BD), redis, openldap, keycloak.
- Observabilite: prometheus, loki, grafana.
- Supervision: icinga (coeur; Icinga Web 2 differe). Forge: forgejo.

Integrations clientes:
- clients_metriques, clients_journaux, clients_pki, clients_ldap, clients_smtp.

Inventaire et outillage:
- make inventaire-ui: refonte (cartes, theme sombre, onglets, vue Chaine VM->groupes->
  playbooks->roles), saisie du provisioning, auto-proposition depuis la nomenclature,
  deploiement securise (verifier/deployer, jeton anti-CSRF, verrou, mot de passe vault),
  robustesse reseau (connexions fermees, favicon).
- Makefile: cible verifier-deploiement; detection d'un group_vars de production chiffre.
- Scission serveurs_web -> serveurs_web_frontaux/dorsaux; migration de l'adressage vers
  10.1.x; retrait des hotes de test; planification des hotes; requirements.yml.

Chaque role valide en --syntax-check et ansible-lint (profil production).
Secrets references depuis Ansible Vault (jamais en clair); roles non testes live.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-22 18:06:11 -04:00

37 lines
1.7 KiB
Markdown

# serveurs_nginx
Installe et configure nginx comme **edge** interne : reverse proxy et terminaison TLS.
## Rôle
- Installe `nginx` et `ssl-cert` (certificat auto-signé).
- Durcissement de base via `conf.d/99-chezlepro.conf` (`server_tokens off`, TLS 1.2/1.3, taille de corps).
- Publie des sites de reverse proxy déclarés dans `serveurs_nginx_sites` (vide par défaut).
- **Valide la configuration (`nginx -t`) avant de recharger** (handler `Valider et recharger nginx`).
## TLS
- Par défaut, certificat auto-signé Debian (`snakeoil`) — l'edge répond en HTTPS dès l'installation.
- `serveurs_nginx_certificat` / `serveurs_nginx_cle` (ou par site) permettent de basculer vers les certificats de l'AC interne / ACME quand `serveurs_step_ca` existera.
## Variables principales
| Variable | Défaut | Rôle |
| --- | --- | --- |
| `serveurs_nginx_certificat` / `_cle` | snakeoil | Certificat TLS par défaut |
| `serveurs_nginx_ssl_protocols` | `TLSv1.2 TLSv1.3` | Protocoles TLS |
| `serveurs_nginx_server_tokens` | `off` | Masque la version |
| `serveurs_nginx_taille_max_corps` | `16m` | `client_max_body_size` |
| `serveurs_nginx_redirection_http` | `true` | Redirige 80 → 443 |
| `serveurs_nginx_desactiver_defaut` | `false` | Retire le site Debian par défaut |
| `serveurs_nginx_sites` | `[]` | Sites reverse proxy |
## Déclarer un site
```yaml
serveurs_nginx_sites:
- nom: forge
domaine: forge.chezlepro.internal
amont: "http://10.1.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 `serveurs_step_ca`).