Set-OPS-Public/exemples/vault.exemple.yml
Daniel Allaire 5ecce4282a une console pour le site, et un repli qui ouvrait vers l Internet
Icinga Web 2 gagne un troisieme mode, locale : nginx authentifie en HTTP Basic
et pose REMOTE_USER, l application le croit. Un SITE n a ni annuaire ni Keycloak
— ce sont des services d ecosysteme. Ni backend LDAP ni backend de groupes : un
backend qui vise une ressource inexistante fait echouer chaque ouverture de
session. L habilitation nomme alors une personne, entorse a D-66 ecrite plutot
que contournee.

Deux pieges en chemin : resoudre_annuaire etait appele sans condition et tombait
sur NoneType has no len (default sans son second argument ne remplace pas None),
et le flux du role ne nommait que l edge — le site n en a pas, donc personne ne
pouvait entrer. serveur_grafana portait deja la reponse.

LE DEFAUT DU DEVIS : une sortie vers un role ABSENT de l ecosysteme retombait
sur !SETOPS_INTERNES, la forme de vers l Internet. La frontiere aurait autorise
la console a parler LDAPS a n importe quelle machine du monde, pour joindre un
annuaire qui n existe pas. C est une source vide ouvre le port, cote
destination. Trois regles du meme defaut etaient DEJA posees pour postfix.

La frontiere n est pas ecrite : elle porte la production, et le devis attend un
mot.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 19:11:22 -04:00

61 lines
2.3 KiB
YAML

---
# Voûte UNIQUE de l'instance — TOUS les secrets, un seul fichier, un seul mot de passe.
#
# Installation (un seul inventaire par instance : « production » dans le modèle socle) :
# 1. Copier ce gabarit vers la voûte de l'instance :
# cp exemples/vault.exemple.yml instance/inventories/production/group_vars/all/vault.yml
# 2. Renseigner les valeurs, puis chiffrer :
# ansible-vault encrypt instance/inventories/production/group_vars/all/vault.yml
# 3. Éditer ensuite sans jamais déchiffrer sur disque :
# ansible-vault edit instance/inventories/production/group_vars/all/vault.yml
#
# Ne JAMAIS versionner le fichier vault.yml (couvert par .gitignore).
# Le GUI ne stocke ni n'affiche ces valeurs : il n'en montre que les NOMS
# (panneau « Intrants de base »). Le mot de passe du vault est saisi au déploiement.
# --- Accès API Proxmox (clonage des VM) ---
proxmox_api_token_id: ""
proxmox_api_token_secret: ""
# --- AC / PKI interne (step-ca) ---
vault_step_ca_password: ""
vault_step_ca_fingerprint: ""
vault_step_ca_provisioner_password: ""
# --- Identité (LDAP / SSO) ---
vault_openldap_admin: ""
vault_ldap_sssd: ""
vault_keycloak_admin: ""
# --- Bases de données ---
vault_postgresql_keycloak: ""
vault_bd_keycloak: ""
vault_bd_forgejo: ""
vault_bd_icingadb: ""
# --- Forge (Forgejo) ---
vault_forgejo_admin: ""
vault_forgejo_secret_key: ""
vault_forgejo_internal_token: ""
# --- Observabilité / divers ---
vault_grafana_admin: ""
vault_redis: ""
# LA CONSOLE DE SUPERVISION, QUAND ELLE S'AUTHENTIFIE SEULE.
#
# `serveur_icingaweb2_auth: locale` — le mode d'un SITE, qui n'a ni annuaire ni Keycloak.
# nginx demande ce mot de passe à l'entrée, Icinga Web 2 croit le nom que nginx lui passe.
# Inutile en mode `ldap` ou `external` : le rôle ne l'exige que dans le mode qui s'en sert.
vault_icingaweb2_admin: ""
# LE COMPTE DE METRIQUES DE POSTGRESQL — lecture seule, role `pg_monitor`.
#
# Il ne lit que les vues de statistiques : pas une ligne de donnee applicative. Faire
# tourner l'exportateur en `postgres` serait donner les cles de la base pour lire des
# compteurs.
#
# VIDE = PAS D'EXPORTATEUR DU TOUT. Le role ne le pose pas, ne cree pas le compte, et
# Prometheus ne derive aucune cible. Degrader, jamais deviner — et surtout jamais un mot
# de passe par defaut.
vault_pg_exportateur: ""