Set-OPS-Public/roles
Daniel Allaire 6a62f0a4c7 authentification : SSO Keycloak devant, secours par sudo, formulaire local fermé
Directive : toute authentification web passe par Keycloak, LDAP est la source
unique des comptes, chaque service garde un accès de secours par sudo sur
l'hôte. Les trois sont indissociables — la chaîne service → Keycloak → LDAP est
en série, donc sans secours une panne exclut tout le monde, y compris pour
réparer. Portée : le web seulement ; IMAP/SMTP se lient à LDAP directement et
SSH est en clé seule.

Posture <rôle>_connexion_locale, false par défaut. Le compte local existe — il
ne peut pas dépendre de Keycloak — mais son formulaire n'est plus proposé au
repos : ouvert en permanence, il contourne la politique de mot de passe, le MFA
et surtout la révocation centrale.

Vérifié auprès de l'amont, puis par rendu réel des gabarits dans les deux
postures :
- Grafana  GF_AUTH_DISABLE_LOGIN_FORM  → ferme ;
- Forgejo  ENABLE_INTERNAL_SIGNIN + ENABLE_BASIC_AUTHENTICATION → ferme, API
  Basic comprise. N'existe que depuis la v10 (ticket amont 7476) ; le rôle
  épingle 10.0.0 et un assert refuse la fermeture en deçà, car le réglage serait
  ignoré sans erreur ;
- Nextcloud hide_login_form → MASQUE seulement : ?direct=1 reste le chemin de
  secours documenté par l'amont. Écrit comme tel, sans prétendre à l'équivalence.

Défaut attrapé par le rendu : la condition Forgejo sans `| bool` n'émettait rien
dans aucune posture — une valeur en chaîne est vraie au sens Jinja, la connexion
locale serait restée ouverte en silence.

docs/authentification.md, décisions D-38 à D-41. ansible-lint (production) sans
échec, 28 preuves OK.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-03 16:50:36 -04:00
..
apparmor Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
auditd Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
chrony Découplage instance : realm centralisé + vars génériques 2026-07-05 00:47:44 -04:00
client_backup docs : un README par rôle (12 manquants) + carte remise à l'état du code 2026-07-29 11:32:06 -04:00
client_journal intégrations : le rôle déclare sa politique ; le cluster passe à l'hébergeur 2026-08-03 14:09:22 -04:00
client_metrique intégrations : le rôle déclare sa politique ; le cluster passe à l'hébergeur 2026-08-03 14:09:22 -04:00
client_pki intégrations : le rôle déclare sa politique ; le cluster passe à l'hébergeur 2026-08-03 14:09:22 -04:00
client_smtp Reconstruction propre : orchestrateur ordonné, registre des flux + pare-feu 2026-07-07 03:08:09 -04:00
client_unbound frontière : la sortie générale est déclarée, pas subie 2026-08-02 13:10:45 -04:00
cloud_init Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
common_packages Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
core_dumps Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
fail2ban_ssh Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
hardening_packages Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
hosts_statiques docs : un README par rôle (12 manquants) + carte remise à l'état du code 2026-07-29 11:32:06 -04:00
journald Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
motd Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
nftables_baseline Reconstruction propre : orchestrateur ordonné, registre des flux + pare-feu 2026-07-07 03:08:09 -04:00
qemu_guest_agent Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
resoudre_annuaire docs : un README par rôle (12 manquants) + carte remise à l'état du code 2026-07-29 11:32:06 -04:00
resoudre_base docs : un README par rôle (12 manquants) + carte remise à l'état du code 2026-07-29 11:32:06 -04:00
serveur_backup docs : un README par rôle (12 manquants) + carte remise à l'état du code 2026-07-29 11:32:06 -04:00
serveur_collabora serveur_collabora : rôle codifié depuis le spike (Docker, WOPI) 2026-07-05 15:03:07 -04:00
serveur_debian flux : l'ICMP entre au registre — l'overlay à 1450 l'exige 2026-08-03 10:07:30 -04:00
serveur_dovecot docs : un README par rôle (12 manquants) + carte remise à l'état du code 2026-07-29 11:32:06 -04:00
serveur_forgejo authentification : SSO Keycloak devant, secours par sudo, formulaire local fermé 2026-08-03 16:50:36 -04:00
serveur_grafana authentification : SSO Keycloak devant, secours par sudo, formulaire local fermé 2026-08-03 16:50:36 -04:00
serveur_icinga Reconstruction propre : orchestrateur ordonné, registre des flux + pare-feu 2026-07-07 03:08:09 -04:00
serveur_icingaweb2 docs : un README par rôle (12 manquants) + carte remise à l'état du code 2026-07-29 11:32:06 -04:00
serveur_keycloak Portabilité from-zero : 4 correctifs débusqués par la reconstruction 2026-07-07 06:45:12 -04:00
serveur_loki Reconstruction propre : orchestrateur ordonné, registre des flux + pare-feu 2026-07-07 03:08:09 -04:00
serveur_nextcloud authentification : SSO Keycloak devant, secours par sudo, formulaire local fermé 2026-08-03 16:50:36 -04:00
serveur_nginx Machinerie d'exposition : SAN auto-dérivés + vhost WebSocket-aware 2026-07-05 15:30:22 -04:00
serveur_oauth2_proxy docs : un README par rôle (12 manquants) + carte remise à l'état du code 2026-07-29 11:32:06 -04:00
serveur_openldap Reconstruction propre : orchestrateur ordonné, registre des flux + pare-feu 2026-07-07 03:08:09 -04:00
serveur_postfix docs : un README par rôle (12 manquants) + carte remise à l'état du code 2026-07-29 11:32:06 -04:00
serveur_postgresql Registre des flux : schéma meta/flux.yml + pilote (postgresql/metrique/nginx) 2026-07-05 09:41:42 -04:00
serveur_powerdns Reconstruction propre : orchestrateur ordonné, registre des flux + pare-feu 2026-07-07 03:08:09 -04:00
serveur_prometheus Portabilité from-zero : 4 correctifs débusqués par la reconstruction 2026-07-07 06:45:12 -04:00
serveur_redis Reconstruction propre : orchestrateur ordonné, registre des flux + pare-feu 2026-07-07 03:08:09 -04:00
serveur_rspamd docs : un README par rôle (12 manquants) + carte remise à l'état du code 2026-07-29 11:32:06 -04:00
serveur_step_ca Reconstruction propre : orchestrateur ordonné, registre des flux + pare-feu 2026-07-07 03:08:09 -04:00
serveur_web_dorsal Rôles web : renommer web_frontal/dorsal -> serveur_web_frontal/dorsal (convention) 2026-07-05 18:49:31 -04:00
serveur_web_frontal Rôles web : renommer web_frontal/dorsal -> serveur_web_frontal/dorsal (convention) 2026-07-05 18:49:31 -04:00
ssh_baseline Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
ssh_hardening Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
sudo_ansible Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
sysctl_hardening Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
systemd_ssh_auto Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
template_cleanup Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00
unattended_upgrades Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00