Dès qu'un parc Linux dépasse quelques machines, gérer les comptes utilisateurs et les permissions vire au casse-tête. Ce guide couvre l'installation, la configuration, la sécurisation et la maintenance d'une solution centralisée basée sur OpenLDAP, SSSD et sudo.
Plan de l'article
- Introduction et contexte
- Installation et configuration d'OpenLDAP
- Structuration de l'annuaire LDAP
- Déploiement de SSSD sur les clients Linux
- Intégration de LDAP dans SSSD
- Configuration de sudo centralisé
- Sécurisation : TLS, PAM, et bonnes pratiques
- Supervision et maintenance de l'annuaire
- Gestion des groupes et des rôles
- Haute disponibilité et réplication LDAP
- Sauvegarde et restauration
- Conclusion et perspectives
Introduction et contexte
La multiplication des serveurs Linux rend la gestion locale des utilisateurs fastidieuse et sujette aux erreurs. Une solution LDAP centralisée apporte :
- Un point unique de gestion des comptes
- Des permissions homogènes sur tous les nœuds
- Une traçabilité des accès avec sudo
Astuce : Planifiez la migration progressivement, en testant sur un groupe restreint avant déploiement global.
Installation et configuration d'OpenLDAP
1. Installation des paquets
sudo apt update
sudo apt install slapd ldap-utils
2. Configuration initiale
sudo dpkg-reconfigure slapd
- Domaine :
dc=example,dc=com - Mot de passe admin LDAP
Attention : Choisissez un mot de passe complexe pour l'administrateur LDAP.
Structuration de l'annuaire LDAP
1. Schéma d'exemple
dn: ou=users,dc=example,dc=com
objectClass: organizationalUnit
ou: users
dn: ou=groups,dc=example,dc=com
objectClass: organizationalUnit
ou: groups
2. Ajout d'utilisateurs
dn: uid=jdupont,ou=users,dc=example,dc=com
objectClass: inetOrgPerson
uid: jdupont
sn: Dupont
givenName: Jean
cn: Jean Dupont
userPassword: {SSHA}XXXXXXXXXXXXXX
Déploiement de SSSD sur les clients Linux
sudo apt install sssd libpam-sss libnss-sss
Configuration /etc/sssd/sssd.conf
[sssd]
domains = example.com
services = nss, pam
[domain/example.com]
id_provider = ldap
auth_provider = ldap
ldap_uri = ldap://ldap.example.com
ldap_search_base = dc=example,dc=com
sudo chmod 600 /etc/sssd/sssd.conf
sudo systemctl enable sssd --now
Intégration de LDAP dans SSSD
- Test de résolution d'utilisateur :
getent passwd jdupont - Test de group mapping :
getent group sudo
Astuce : Activez enumerate = false pour éviter la surcharge du serveur LDAP.
Configuration de sudo centralisé
1. Schéma LDAP pour sudo
sudo apt install ldap-schema sudo-ldap
2. Ajout de règles sudo
dn: cn=admins,ou=groups,dc=example,dc=com
objectClass: top
objectClass: sudoRole
cn: admins
sudoUser: %admins
sudoHost: ALL
sudoCommand: ALL
3. Configuration PAM
sudo apt install libpam-ldapd
Attention : Vérifiez que /etc/nsswitch.conf contient sudoers: sss files.
Sécurisation : TLS, PAM et bonnes pratiques
- Génération d'un certificat TLS pour LDAP
- Configuration de
ldap_tls_cacertetldap_tls_reqcert - Durcissement PAM avec
pam_faillock
Supervision et maintenance de l'annuaire
- Surveillance des logs
/var/log/syslog - Utilisation de
ldapsearchpour vérifier l'intégrité - Mise en place d'un script de monitoring Nagios/Icinga
Gestion des groupes et des rôles
- Modélisation des groupes LDAP pour refléter la structure de l'entreprise
- Gestion dynamique via des scripts Ansible
Haute disponibilité et réplication LDAP
- Configuration de la réplication syncrepl
- Mise en place de deux serveurs LDAP en miroir
Sauvegarde et restauration
slapcat -b dc=example,dc=com > backup.ldif
sudo systemctl stop slapd
slapadd -l backup.ldif
Ressources complémentaires
- Consultez l'installation OpenLDAP
- Utilisez Keycloak pour le SSO
Conclusion et perspectives
La centralisation LDAP couplée à SSSD et sudo donne un socle solide pour gérer utilisateurs et permissions. En suivant ce guide, vous obtenez une infrastructure sécurisée, simple à administrer et capable de monter en charge.


