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"