Configurer OpenLDAP sur Linux : Préparer l’annuaire

Configurer OpenLDAP sur Linux : Préparer l’annuaire LDAP

Ce tutoriel vous guide pas à pas pour configurer OpenLDAP sur Linux (Red Hat 9 ou Debian 13). L’objectif est de préparer correctement votre annuaire LDAP en important les schémas nécessaires, en créant les unités organisationnelles (OU), ainsi que les groupes et les utilisateurs. Une bonne configuration initiale est cruciale pour le bon fonctionnement de votre serveur LDAP.

En bref

Pour configurer OpenLDAP sur Linux, vous devez préparer l’annuaire LDAP. Cela implique l’installation des schémas LDAP, la création des unités organisationnelles (OU) pour structurer votre annuaire, et l’ajout des groupes et des utilisateurs. Suivez ce tutoriel pas à pas pour réussir cette configuration essentielle.

configurer OpenLDAP sur Linux

En d’autres termes, vous allez structurer l’annuaire pour qu’il reflète l’organisation de votre entreprise ou de votre application. Nous allons voir comment importer les schémas, créer les conteneurs (OU), et ajouter les premiers utilisateurs et groupes.

Prérequis pour configurer OpenLDAP

Avant de commencer à configurer OpenLDAP, assurez-vous que les éléments suivants sont en place :

  1. Un serveur Linux (Red Hat 9 ou Debian 13) avec accès root.
  2. OpenLDAP installé et configuré (installation de base).
  3. Une connexion réseau fonctionnelle.
  4. Des connaissances de base de la ligne de commande Linux.
configurer OpenLDAP sur Linux

Si OpenLDAP n’est pas encore installé, référez-vous à la documentation officielle de votre distribution Linux pour l’installer. Une fois l’installation de base effectuée, vous pouvez passer à la préparation de l’annuaire.

Étape 1 : Importer les schémas LDAP standards

configurer OpenLDAP sur Linux

Les schémas LDAP définissent les types d’objets (utilisateurs, groupes, etc.) et leurs attributs. Il est important d’importer les schémas standards pour que votre annuaire puisse être utilisé par les applications compatibles LDAP.

  1. Localisez le répertoire des schémas LDAP sur votre serveur. Il se trouve généralement dans /etc/ldap/schema sous Debian et /etc/openldap/schema sous Red Hat.
  2. Vérifiez que les schémas standards (core.schema, cosine.schema, inetorgperson.schema, etc.) sont présents.
  3. Si un schéma est manquant, vous pouvez le télécharger depuis internet (cherchez « LDAP schema [nom du schéma] »).
  4. Pour importer un schéma, utilisez la commande ldapadd avec les droits root. Exemple :
    ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/ldap/schema/cosine.schema
  5. Redémarrez le service OpenLDAP pour que les changements soient pris en compte :
    systemctl restart slapd (sous Debian/Ubuntu) ou systemctl restart ldap (sous Red Hat).

L’importation des schémas est une étape cruciale. Sans les schémas appropriés, vous ne pourrez pas définir les attributs des objets de votre annuaire.

Étape 2 : Créer les unités organisationnelles (OU)

Les unités organisationnelles (OU) permettent de structurer votre annuaire en créant des conteneurs logiques. Elles sont indispensables pour organiser les utilisateurs et les groupes.

  1. Créez un fichier LDIF (LDAP Data Interchange Format) pour définir les OU. Exemple : ou.ldif :
    dn: ou=People,dc=example,dc=com
    objectClass: organizationalUnit
    ou: People

    dn: ou=Groups,dc=example,dc=com
    objectClass: organizationalUnit
    ou: Groups

  2. Remplacez dc=example,dc=com par votre propre domaine.
  3. Importez le fichier LDIF avec la commande ldapadd :
    ldapadd -x -D cn=admin,dc=example,dc=com -W -f ou.ldif
  4. Saisissez le mot de passe de l’administrateur LDAP lorsque vous y êtes invité.

En pratique, vous pouvez créer autant d’OU que nécessaire pour refléter la structure de votre organisation (par exemple, une OU par service : ou=Comptabilite,dc=example,dc=com).

Étape 3 : Ajouter des groupes

Les groupes permettent de gérer les permissions et les accès de plusieurs utilisateurs en même temps.

  1. Créez un fichier LDIF pour définir les groupes. Exemple : group.ldif :
    dn: cn=Administrators,ou=Groups,dc=example,dc=com
    objectClass: top
    objectClass: posixGroup
    cn: Administrators
    gidNumber: 1000
  2. Remplacez gidNumber par un identifiant de groupe unique.
  3. Importez le fichier LDIF avec la commande ldapadd :
    ldapadd -x -D cn=admin,dc=example,dc=com -W -f group.ldif

Étape 4 : Ajouter des utilisateurs

L’ajout d’utilisateurs est l’étape finale de la préparation de l’annuaire. Chaque utilisateur doit avoir un identifiant unique (uid).

  1. Créez un fichier LDIF pour définir les utilisateurs. Exemple : user.ldif :
    dn: uid=john.doe,ou=People,dc=example,dc=com
    objectClass: top
    objectClass: inetOrgPerson
    uid: john.doe
    cn: John Doe
    sn: Doe
    givenName: John
    userPassword: {SSHA}password
    homeDirectory: /home/john.doe
    loginShell: /bin/bash
    gidNumber: 1000
    uidNumber: 1001
  2. Remplacez les valeurs par les informations de l’utilisateur.
  3. Générez un mot de passe chiffré avec slappasswd -s password et remplacez {SSHA}password par le résultat.
  4. Importez le fichier LDIF avec la commande ldapadd :
    ldapadd -x -D cn=admin,dc=example,dc=com -W -f user.ldif

Il est important de choisir des mots de passe robustes et de stocker les mots de passe chiffrés pour des raisons de sécurité.

Dépannage OpenLDAP : Problèmes courants

Voici quelques problèmes que vous pourriez rencontrer lors de la configuration d’OpenLDAP :

  • Erreur d’authentification : Vérifiez que le mot de passe de l’administrateur est correct et que le compte n’est pas verrouillé.
  • Erreur lors de l’importation des schémas : Assurez-vous que les fichiers de schémas sont valides et accessibles.
  • Impossible d’ajouter des objets : Vérifiez que les OU existent et que vous avez les droits nécessaires.

Bonnes pratiques pour OpenLDAP

  • Utilisez des mots de passe forts et changez-les régulièrement.
  • Sauvegardez régulièrement votre base de données LDAP.
  • Surveillez les logs pour détecter les problèmes de sécurité.
  • Limitez l’accès à l’annuaire LDAP aux seuls utilisateurs autorisés.

Questions frequentes

Comment vérifier si un schéma LDAP est bien importé ?

Vous pouvez utiliser la commande ldapsearch pour rechercher des objets définis dans le schéma. Si la recherche aboutit, cela signifie que le schéma est correctement importé. Par ailleurs, vérifiez les logs du serveur LDAP pour détecter d’éventuelles erreurs lors du redémarrage du service.

Comment modifier le mot de passe d’un utilisateur LDAP ?

Vous pouvez utiliser la commande ldapmodify pour modifier l’attribut userPassword d’un utilisateur. Générez d’abord un nouveau mot de passe chiffré avec slappasswd, puis utilisez ldapmodify pour remplacer l’ancien mot de passe par le nouveau.

Comment sauvegarder et restaurer une base de données OpenLDAP ?

Pour sauvegarder, utilisez slapcat pour exporter la base de données dans un fichier LDIF. Pour restaurer, utilisez slapadd pour importer le fichier LDIF dans une nouvelle base de données. Assurez-vous d’arrêter le service LDAP avant de restaurer la base de données.