Serveur OpenLDAP sur CentOS

De wikiGite
yum install openldap-servers openldap-clients

Génerer un mot de pass Manager :

slappasswd

Copier la chaine SHA

Editer /etc/openldap/slapd.conf

Modifier :

suffix          "dc=domain,dc=tld"
rootdn          "cn=Manager,dc=domain,dc=tld"
rootpw          {SSHA}eSbnuEgrw4U2XEau/v9euZqnxzzByN3a # Généré avec slappasswd

Lancer slapd

service slapd start

Ldap est-il opérationnel ?

ldapsearch -x -h localhost -b "dc=domain,dc=tld" objectclass=*

Créer initroot.ldif pour initialiser la racine du domaine, et une ou plusieurs OU (Organizational Unit)

#Fichier LDIF de chargement initial
#Loaded by : ldapadd -v -x -f initroot.ldif -W -D "cn=Manager,dc=domain,dc=tld"
version: 1

dn: dc=domain,dc=tld
changetype: add
objectclass: top
objectclass: dcObject
objectclass: organization
o: domain
dc: domain
description: Racine de l'annuaire

dn: ou=Users, dc=domain, dc=tld
ou: Users
objectclass: organizationalUnit
description: OU Utilisateurs

dn: ou=Groups, dc=domain, dc=tld
ou: Groups
objectclass: organizationalUnit
description: OU Groupes

Et l'ajouter

ldapadd -v -x -f initroot.ldif -W -D "cn=Manager,dc=domain,dc=tld"

(Note : phpLdapAdmin propose de créer la racine si elle n'existe pas à la première connexion, mais le lien ne fonctionne pas : problème de javascript...). Il faut donc passer par cette ligne de commande.

On peut ensuite ajouter,modifier ou supprimer des entrées avec ldapmodify uniquement, en ajoutant l'attribut "changetype" :

# Exemples de LDIFF pour ldapmodify
# DELETE
dn: cn=DUPOND Georges, ou=Users, dc=domain, dc=tld
changetype: delete

# ADD
dn: cn=DUPOND Georges, ou=Users, dc=domain, dc=tld
changetype: add
cn: DUPOND Georges
givenname: DUPOND
sn: Georges
departmentNumber: Administrateurs
mail: dupond@ephoto.fr
telephonenumber:12345678
objectclass: inetOrgPerson

# MODIFY
dn: cn=DUPOND Georges, ou=Users, dc=domain, dc=tld
changetype: modify
cn: DUPOND Georges
givenname: DUPOND
sn: Georges
departmentNumber: Utilisateurs
mail: dupond@ephoto.fr
telephonenumber:12345678
postalCode: 86000

puis :

ldapmodify -v -x -f donnees.ldif -W -D "cn=Manager,dc=domain,dc=tld"