Open LDAP

Installation et configuration de open LDAP + LDAP Account Manager

apt-get install slapd ldap-utils -y
mkdir /etc/ldap/content

Configuration de la base du LDAP

Fichiers de configuration pour le LDAP et la création des utilisateurs

  • Création du fichier /etc/ldap/ldap.conf

BASE	dc=lin1,dc=local
URI	ldap://10.10.10.11
# ldap://ldap-provider.example.com:666

#SIZELIMIT	12
#TIMELIMIT	15
#DEREF		never

# TLS certificates (needed for GnuTLS)
TLS_CACERT	/etc/ssl/certs/ca-certificates.crt
  • /etc/ldap/content/base.ldif

    • Fichier de configuration pour la création des deux UO

      • users

      • groups

dn: ou=users, dc=lin1,dc=local
objectClass: organizationalUnit
objectClass: top
ou: users

dn: ou=groups,dc=lin1,dc=local
objectClass: organizationalUnit
objectClass: top
ou: groups
  • /etc/ldap/content/groups.ldif

    • Fichier de configuration pour la création des groupes

dn: cn=Managers,ou=groups,dc=lin1,dc=local
objectClass: top
objectClass: posixGroup
gidNumber: 20000

dn: cn=Ingenieurs,ou=groups,dc=lin1,dc=local
objectClass: top
objectClass: posixGroup
gidNumber: 20010

dn: cn=Developpeurs,ou=groups,dc=lin1,dc=local
objectClass: top
objectClass: posixGroup
gidNumber: 20020
  • /etc/ldap/content/users.ldif

    • Fichier de configuration pour la création des utilisateurs

dn: uid=man1,ou=users,dc=lin1,dc=local
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: person
uid: man1
userPassword: {crypt}x
cn: Man 1
givenName: Man
sn: 1
loginShell: /bin/bash
uidNumber: 10000
gidNumber: 20000
displayName: Man 1
homeDirectory: /home/man1
mail: man1@
description: Man 1 account

dn: uid=man2,ou=users,dc=lin1,dc=local
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: person
uid: man2
userPassword: {crypt}x
cn: Man 2
givenName: Man
sn: 2
loginShell: /bin/bash
uidNumber: 10001
gidNumber: 20000
displayName: Man 2
homeDirectory: /home/man1
mail: man2@
description: Man 2 account

dn: uid=ing1,ou=users,dc=lin1,dc=local
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: person
uid: ing1
userPassword: {crypt}x
cn: Ing 1
givenName: Ing
sn: 1
loginShell: /bin/bash
uidNumber: 10010
gidNumber: 20010
displayName: Ing 1
homeDirectory: /home/man1
mail: ing1@
description: Ing 1 account

dn: uid=ing2,ou=users,dc=lin1,dc=local
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: person
uid: ing2
userPassword: {crypt}x
cn: Ing 2
givenName: Ing
sn: 2
loginShell: /bin/bash
uidNumber: 10011
gidNumber: 20010
displayName: Ing 2
homeDirectory: /home/man1
mail: ing2@
description: Ing 2 account

dn: uid=dev1,ou=users,dc=lin1,dc=local
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: person
uid: dev1
userPassword: {crypt}x
cn: Dev 1
givenName: Dev
sn: 1
loginShell: /bin/bash
uidNumber: 10020
gidNumber: 20020
displayName: Dev 1
homeDirectory: /home/man1
mail: dev1@
description: Dev 1 account
  • /etc/ldap/content/addtogroups.ldif

    • Fichier pour la modification des utilisateurs (ajout aux groupes)

dn: cn=Managers,ou=groups,dc=lin1,dc=local
changetype: modify
add: memberuid
memberuid: man1

dn: cn=Managers,ou=groups,dc=lin1,dc=local
changetype: modify
add: memberuid
memberuid: man2

dn: cn=Ingenieurs,ou=groups,dc=lin1,dc=local
changetype: modify
add: memberuid
memberuid: ing1

dn: cn=Ingenieurs,ou=groups,dc=lin1,dc=local
changetype: modify
add: memberuid
memberuid: ing2

dn: cn=Devloppeurs,ou=groups,dc=lin1,dc=local
changetype: modify
add: memberuid
memberuid: dev1

Création de la structure LDAP avec les fichiers de configuration

Il est nécessaire de faire une ligne par utilisateurs. Il faut remplacer la valeur de $LDAPPWD par le bon mot de passe, ou simplement définir la variable avec le bon mot de passe. Ici $LDAPPWD="LIL-fesm-zont"

# Création de la base du LDAP
ldapadd -x -D "cn=admin,dc=lin1,dc=local" -f /etc/ldap/content/base.ldif -w $LDAPPWD

# Création des utilisateurs
ldapadd -x -D "cn=admin,dc=lin1,dc=local" -f /etc/ldap/content/users.ldif -w $LDAPPWD

# Création des groupes
ldapadd -x -D "cn=admin,dc=lin1,dc=local" -f /etc/ldap/content/users.ldif -w $LDAPPWD

Modification des mots passes utilisateurs

ldappasswd -s "Pa$$w0rd" -D "cn=admin,dc=lin1,dc=local" -x "uid=man1,ou=users,dc=lin1,dc=local" -w $LDAPPWD
ldappasswd -s "Pa$$w0rd" -D "cn=admin,dc=lin1,dc=local" -x "uid=man2,ou=users,dc=lin1,dc=local" -w $LDAPPWD
ldappasswd -s "Pa$$w0rd" -D "cn=admin,dc=lin1,dc=local" -x "uid=ing1,ou=users,dc=lin1,dc=local" -w $LDAPPWD
ldappasswd -s "Pa$$w0rd" -D "cn=admin,dc=lin1,dc=local" -x "uid=ing2,ou=users,dc=lin1,dc=local" -w $LDAPPWD
ldappasswd -s "Pa$$w0rd" -D "cn=admin,dc=lin1,dc=local" -x "uid=dev1,ou=users,dc=lin1,dc=local" -w $LDAPPWD

Ajout des utilisateurs dans les groupes

Ajout des utilisateurs dans leur groupe respectifs

ldapmodify -x -D "cn=admin,dc=lin1,dc=local" -f /etc/ldap/content/addtogroup.ldif -w $LDAPPWD

Redémarrer le service LDAP

systemctl restart slapd

Installation et configuration de ldap-account-manager (LAM)

apt-get install ldap-account-manager -y

Configuration de LAM

Connexion à LAM

Avec un navigateur, se connecter à l'adresse suivante

Adresse de LAM

Modification des champs de base

Sous "LAM Configuration" > "Edit server profiles", se connecter avec les identifiants suivant pour y effectuer les modifications nécessaires.

  • lam

  • LIL-fesm-zont (le mot de passe par défaut était "lam")<<s

Les modifications à faire sont les suivantes :

  • Sous "Tool settings" : Ajouter la base du LDAP pour voir la vue sur la totalité du répertoire LDAP. (=> Tree suffix)

  • Sous "Security settings" : Ajouter le CN d'un utilisateurs valide (administrateur LDAP). Cet utilisateur est utilisé pour se connecter à LAM.

  • Il est possible le mot de passe pour accèder à ces configurations sous "Profile password"

  • Le reste n'a pas été modifié.

Connexion à LAM pour la gestion des utilisateurs

Pour afficher et gérer nos utilisateurs et nos groupes, on peut se connecter avec l'utilisateur "admin", qui se créer à l'installation de open-ldap, à condition d'avoir bien configurer LAM comme montré plus haut. On peut ensuite afficher la "Tree view", ou encore juste nos utilisateurs sous forme de tableau

On peut voir ici les utilisateurs de notre LDAP. Il est possible (et conseillé) de créer les utilisateurs depuis cette interface web.

Attention: Afin qu'un utilisateur soit correctement importer dans le serveur nextcloud, l'utilisateur doit possèder un champ "Descriptions" avec une valeur.

Last updated