Fermeture des dettes de doc : - nouvelle unité wiki « Autorisation & RBAC » (authZ, exemple Grafana) ; - section « le renouvellement est un système » dans l'unité PKI ; - docs/runbooks-exploitation.md (cert expiré, RBAC Grafana, branding). 15 unités wiki. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2.9 KiB
Runbooks d'exploitation — Set-OPS
Procédures courtes et concrètes pour les situations d'exploitation. Complète les docs/ de conception (le pourquoi) par le comment faire. Le wiki de formation en donne la version pédagogique.
1. Un certificat a expiré / le login SSO est cassé
Symptôme : connexion à une app via le SSO échoue après le login ; log Grafana/app :
tls: failed to verify certificate: x509: certificate has expired.
Cause fréquente : le cert step-ca a été renouvelé sur disque mais le service (nginx sur l'edge) n'a pas été rechargé → il sert l'ancien cert en mémoire.
Diagnostic-réflexe — comparer le cert servi au cert fichier :
# SERVI (en mémoire par nginx)
echo | openssl s_client -connect infra-edge-01…:443 -servername keycloak.lab… 2>/dev/null \
| openssl x509 -noout -enddate
# FICHIER (sur disque)
openssl x509 -in /etc/step/certs/infra-edge-01….crt -noout -enddate
Dates différentes (servi < fichier) ⇒ nginx sert un cert périmé.
Fix immédiat : systemctl reload nginx sur l'edge (idem postfix/dovecot/slapd selon le
service touché).
Fix permanent (déjà en place) : client_pki_reload_services recharge les vrais consommateurs
après chaque renouvellement — edge→nginx, mail→postfix/dovecot, annuaire→slapd. Vérifier :
systemctl cat cert-renewer@$(hostname -f).service | grep ExecStartPost.
Voir aussi l'unité wiki PKI & confiance (⑤ le renouvellement).
2. Donner Explore/Editor à un opérateur dans Grafana (RBAC)
Par défaut, un utilisateur SSO est Viewer (dashboards seulement, pas Explore). Pour l'élever :
- Déclarer l'assignation dans l'inventaire de l'instance (group_vars
serveur_keycloak) :serveur_keycloak_role_assignments: - { user: <uid>, role: grafana-editor } # ou grafana-admin - Redéployer Keycloak (
make deployersur le nœud SSO) — kcadm à chaud, sans coupure. - L'utilisateur doit se déconnecter/reconnecter (Grafana applique le rôle à la connexion).
Mapping (défaut du rôle grafana) : grafana-admin→Admin, grafana-editor→Editor, sinon Viewer
(serveur_grafana_oidc_role_path). Idéal souverain : piloter par un groupe d'annuaire plutôt
qu'un utilisateur explicite. Voir l'unité wiki Autorisation & RBAC.
3. Brander une instance Forgejo (identité visuelle)
Activer dans l'inventaire (group_vars serveur_forgejo) :
serveur_forgejo_branding: true
serveur_forgejo_app_name: "Forge Chezlepro"
serveur_forgejo_theme: "forgejo-dark"
serveur_forgejo_meta_description: "…"
Puis redéployer. Le rôle déploie le dossier custom/ officiel (logo/favicon aurore, accent CSS par
variables, page d'accueil brandée) — léger, résistant aux MAJ (aucune classe interne touchée).
Note : ne s'applique qu'aux Forgejo gérées par Set-OPS.