La gestion des utilisateurs globaux en ligne de commande se fait via la commande ldapadd et des fichiers de configuration .ldif.

Pour appliquer un fichier de configuration, il faut faire la commande suivante :

# Le CN, DC indique le domaine courant sur lequel la configuration est appliquée
ldapadd -D 'cn=Directory Manager,dc=localdomain' -f my-user.ldif -x -W 
# Il faut alors entrer le mot de passe de gestion de LDAP

Pour ne pas avoir à entrer le mot de passe (pour des scripts par exemple) on peut le spécifier dans la commande

ldapadd -D 'cn=Directory Manager,dc=localdomain' -f my-user.ldif -x -w rootroot

Configuration du fichier LDIF

Pour avoir tout dans un seul fichier

Pour éviter d’avoir chaque action faite dans un fichier différent on peut mettre plusieurs actions dans un même fichier en ajoutant une ligne vide entre chaque.

  • Créer une unité organisationelle. Dans cet exemple, une unité “Student” située dans l’unité “People” du domaine local.
dn: ou=Student, ou=People, dc=localdomain
ou: Student
description: Tous les etudiants
objectClass: top
objectClass: organizationalUnit
  • Créer un compte. Pour définir le mdp il faut préciser le hash du mdp généré par la commande slappasswd -s 'My$uperPassword' il faut également bien faire attention que le uidNumber soit unique et que le gidNumber reste à 100.
dn: uid=ldapswila,ou=Student,ou=People,dc=localdomain
objectClass: top
objectClass: inetorgperson
objectClass: posixAccount
cn: Louis SWINNEN
sn: SWINNEN
givenname: Louis
userPassword: {SSHA}RkAIBaL8vWtuvAd3dG2aQGONlfzpDQ5E
gidNumber: 100
uidNumber: 15005
homeDirectory: /home/ldapswila
loginShell: /bin/bash
  • Créer un groupe (par exemple ici un groupe bac1 dans l’unité Groups du domaine). Il faut bien faire attention que le gidNumber doit être unique.
dn: cn=bac1,ou=Groups,dc=localdomain
description: bac1
objectClass: top
objectClass: posixGroup
gidNumber: 15100
  • Faire rejoindre un utilisateur dans un groupe
dn: cn=bac1,ou=Groups,dc=localdomain
changetype: modify
add: memberuid
memberuid: ldapswila