Avant de démarrer le serveur OpenLDAP, vous devez d'abord configurer quelques éléments.
Configuration de base
Vous devez configurer un utilisateur et un mot de passe root, ainsi que définir votre DN de base. Dans slapd.conf
cherchez les lignes qui suivent les lignes, et définissez-les aux valeurs que vous voulez.
suffix "dc=example,dc=com"
rootdn "cn=root,dc=example,dc=com"
Habituellement, votre DN de base (défini comme suffix
dans le fichier) est constitué des composants de votre nom de domaine, séparés par des virgules et préfixés par l'expression dc=
. Donc, serverfault.com
pourrait devenir dc=serverfault,dc=com
. Votre rootdn
doit être sous ce suffixe.
Vous devez également modifier la ligne qui définit le mot de passe root. Vous pouvez le définir comme une valeur en clair, ou utiliser la fonction slappasswd
pour créer un hachage. Vous devez ensuite mettre soit la valeur en clair soit la valeur hachée hors de slappasswd
dans une ligne qui ressemble à ça :
rootpw myultrasecurepassword
Schémas
Il est bon, à ce stade, de commencer à réfléchir aux schémas que vous souhaitez utiliser. Un schéma définit les attributs qu'un objet peut avoir. Vous devez donc inclure les schémas qui contiennent les attributs dont vous avez besoin. Ces schémas sont inclus en haut de slapd.conf
et ceux qui figurent ici sont généralement les schémas de base absolus dont vous aurez besoin :
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema
Ces chemins sont ceux utilisés dans Arch Linux, vous devrez peut-être les ajuster pour qu'ils conviennent à Oracle Linux.
À propos de slapd.conf
vs slapd.d
OpenLDAP est passé d'une configuration hors ligne (faite en slapd.conf
) à la configuration en ligne, en stockant les données dans un fichier spécial cn=config
arbre trouvé dans slapd.d
. Modifier le ldif
fichiers dans slapd.d
est un processus douloureux cependant, il est beaucoup plus facile d'éditer slapd.conf
comme ci-dessus, puis convertissez-le dans le nouveau slapd.d
format.
D'abord, enlevez tout ce qui se trouve dans slapd.d
. Ensuite, exécutez la commande suivante, en veillant à ajuster les chemins d'accès à Oracle Linux :
slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/
Ensuite, il suffit de définir le propriétaire comme étant votre utilisateur LDAP et votre groupe sur ce répertoire de manière récursive, et vous devriez être prêt à partir. Ceci doit être fait à chaque fois que vous modifiez slapd.conf
- N'oubliez pas d'arrêter le serveur OpenLDAP avant de le faire !
Exécution initiale
Avant de pouvoir utiliser le répertoire, vous devez créer le DN de base (et l'utilisateur root). Créez un .ldif
contenant des lignes similaires à celles qui suivent :
dn: dc=example,dc=com
objectclass: dcObject
objectclass: organization
o: example.com
dc: example
dn: cn=root,dc=example,dc=com
objectclass: organizationalRole
cn: root
Maintenant, démarrez le serveur OpenLDAP. Nous avons juste besoin de pousser cette information dans l'annuaire LDAP :
ldapadd -D "cn=root,dc=example,dc=com" -W -f initial.ldif
Changez évidemment le DN de la racine et le nom du fichier ldif pour qu'ils correspondent à ce que vous avez.
Vous devriez maintenant avoir un répertoire LDAP fonctionnel et prêt à être alimenté !
Le wiki d'Arch Linux est une grande source d'informations sur ce sujet - voir https://wiki.archlinux.org/index.php/OpenLDAP y https://wiki.archlinux.org/index.php/LDAP_Authentication si vous voulez en savoir plus.