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/client_ldap/README.md
Daniel Allaire ca0f95da28 Mettre les noms de roles et playbooks au singulier
serveurs_* -> serveur_, clients_ -> client_, suffixes pluriels au
singulier (serveur_web_dorsal/frontal, client_metrique, client_journal).

Renommage par tokens exacts : repertoires de roles, playbooks de groupes,
group_vars, variables internes des roles (serveur_nginx_*, conformite
ansible-lint), groupes du plan, constantes de code, docs. Faux-amis
preserves (serveurs_bd, scripts/serveurs.py, fonctions Python). Groupes
d'etat gardes au pluriel (hotes_actifs/planifies, modeles_vm).

Valide : ansible-lint 0 echec (0 var-naming), diff vide de la generation,
node --check, tous les registres. Ajout de .ansible-lint excluant docs/
(registres de donnees, pas du contenu Ansible).

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

1.9 KiB

client_ldap

Intégration cliente identité utilisateur : l'hôte authentifie les utilisateurs via l'annuaire central serveur_openldap, grâce à SSSD (NSS + PAM).

Rôle

  • Installe sssd, sssd-ldap, libnss-sss, libpam-sss.
  • Déploie /etc/sssd/sssd.conf (0600) pointant vers OpenLDAP (id_provider/auth_provider = ldap).
  • Active sss dans /etc/nsswitch.conf (passwd, group, shadow).
  • Active la création automatique du répertoire personnel (pam-auth-update --enable mkhomedir).
  • libpam-sss active automatiquement le module PAM sss.

Effet

Après ce rôle, les comptes de l'annuaire Chezlepro peuvent se connecter à l'hôte (SSH, console) et leur home est créé à la première connexion. Couplé à client_pki (identité machine), l'écosystème a une authentification machines + utilisateurs centralisée.

Variables principales

Variable Défaut Rôle
client_ldap_uri ldap://idm-01.chezlepro.internal URI de l'annuaire
client_ldap_base_dn dc=chezlepro,dc=internal Base de recherche
client_ldap_bind_dn "" (anonyme) Compte de lecture (optionnel, mdp via Vault)
client_ldap_tls_reqcert never Validation TLS (→ demand avec LDAPS)

Notes / limites

  • Bind anonyme par défaut : suppose une lecture publique de l'annuaire. Pour un bind dédié, définir client_ldap_bind_dn + client_ldap_bind_password (Vault) et créer le compte de service dans l'annuaire.
  • LDAP en clair sur le réseau interne pour l'instant ; basculer en LDAPS quand OpenLDAP exposera un certificat (step_ca), avec client_ldap_tls_reqcert: demand.
  • Les entrées utilisateurs/groupes (POSIX) doivent exister dans l'annuaire (gestion d'identité).

Prérequis

  • Dépendance client_ldap requiert serveur_openldap actif (déjà dans docs/dependances-groupes.yml).