Configuration de votre système pour l'authentification à l'aide de OpenLDAP

Cette section donne un bref aperçu de la manière de configurer votre système Red Hat Linux pour l'authentification à l'aide de OpenLDAP. A moins que vous ne soyez un expert de OpenLDAP, vous aurez probablement besoin de plus de documentation que vous n'en trouverez ici. Reportez-vous aux références de la la section intitulée Ressources LDAP sur le Web pour plus d'informations.

Installez les paquetages LDAP nécessaires

Tout d'abord, assurez-vous que les paquetages appropriés sont installés tant sur le serveur LDAP que sur les ordinateurs clients LDAP. Le serveur LDAP a besoin du paquetage openldap.

Les ordinateurs clients LDAP ont besoin des paquetages suivants : openldap, auth_ldap et nss_ldap.

Editez les fichiers de configuration

Edit /etc/openldap/slapd.conf

Le fichier slapd.conf, situé dans /etc/openldap, contient les informations de configuration dont a besoin votre serveur LDAP slapd. Vous devrez éditer ce fichier pour le rendre spécifique à votre domaine et à votre serveur.

La ligne du suffixe nomme le domaine pour lequel le serveur LDAP fournira des informations. La ligne du suffixe doit être modifiée de :

suffix 		"dc=your-domain, dc=com"

en une expression reflétant votre nom de domaine. Par exemple :

suffix		"dc=acmewidgets, dc=com"

ou

suffix 		"dc=acmeuniversity, dc=org"

L'entrée rootdn est le nom de domaine pour un utilisateur non restreint par les paramètres de contrôle d'accès ou de limite administrative définis pour les opérations sur l'annuaire LDAP. On peut se représenter l'utilisateur rootdn comme l'utilisateur root pour l'annuaire LDAP. La ligne rootdn doit être modifiée de :

rootdn		"cn=root, dc=your-domain, dc=com"

en quelque chose comme :

rootdn		"cn=root, dc=redhat, dc=com"

ou

rootdn		"cn=ldapmanager, dc=my_organization, dc=org"

Modifiez la ligne rootpw de :

rootpw 		secret

en quelque chose comme :

rootpw		{crypt}s4L9sOIJo4kBM

Dans l'exemple ci-dessus, vous utilisez un mot de passe root crypté, ce qui vaut beaucoup mieux que de laisser un mot de passe root en texte en clair dans le fichier slapd.conf. Pour créer cette chaîne cryptée, vous pouvez la copier dans un fichier passwd ou utiliser Perl :

perl -e "print crypt('passwd','a_salt_string');"

Dans la ligne Perl précédente, salt_string est une chaîne salt de deux caractères, et passwd est la version en texte en clair du mot de passe.

Vous pourriez également copier une entrée passwd de /etc/passwd, mais ceci ne fonctionnera pas si l'entrée passwd est un mot de passe MD5 (valeur par défaut dans Red Hat Linux 7.0).

Edit ldap.conf

Modifiez les fichiers ldap.conf dans /etc et dans /etc/openldap sur le serveur et les clients LDAP.

Modifiez /etc/ldap.conf, le fichier de configuration pour nss_ldap et pam_ldap, afin de refléter votre organisation et votre base de recherche. Le fichier /etc/openldap/ldap.conf est le fichier de configuration pour les outils de ligne de commande tels que ldapsearch, ldapadd, etc. ; il faut également l'éditer pour votre nouvelle configuration de LDAP. Il convient de modifier ces deux fichiers en fonction de votre système sur les ordinateurs clients.

Edit /etc/nsswitch.conf

Pour utiliser nss_ldap, ajoutez ldap aux champs appropriés dans /etc/nsswitch.conf (soyez prudent lorsque vous éditez ce fichier ; assurez-vous de savoir ce que vous faites). Par exemple :

passwd: files ldap shadow: files ldap group: files ldap

PAM et LDAP

Pour faire en sorte que des applications compatibles PAM standard utilisent LDAP pour l'authentification, exécutez authconfig et sélectionnez Use LDAP (la technologie PAM dépasse la portée de cette présentation du protocole LDAP ; dès lors, si vous avez besoin d'aide, consultez la section intitulée Authentification de l'utilisateur avec PAM dans Chapitre 2 et/ou les pages de manuel sur PAM).

Faites migrer vos anciennes informations d'authentification vers le format LDAP

Le répertoire /usr/share/openldap/migration contient un ensemble de scripts shell et Perl pour la migration de vos anciennes informations d'authentification vers le format LDAP (Perl doit naturellement être installé sur votre système pour que vous puissiez utiliser ces scripts).

Tout d'abord, modifiez le fichier migrate_common.ph de manière à ce qu'il reflète votre domaine. Le domaine DNS par défaut devrait être changé de :

$DEFAULT_MAIL_DOMAIN = "padl.com";

en quelque chose comme :

$DEFAULT_MAIL_DOMAIN = "your_company.com";

La base par défaut devrait également être changée de :

$DEFAULT_BASE = "dc=padl,dc=com";

en quelque chose comme :

$DEFAULT_BASE = "dc=your_company,dc=com";

Ensuite, vous devez choisir le script à utiliser. Le tableau ci-dessous vous y aidera :

Tableau 7-1. Scripts de migration LDAP

Service de noms existantLDAP fonctionne-t-il ?Utilisez ce script :
tableaux bidimensionnels /etcouimigrate_all_online.sh
tableaux bidimensionnels /etcnonmigrate_all_offline.sh
NetInfoouimigrate_all_netinfo_online.sh
NetInfononmigrate_all_netinfo_offline.sh
NIS (YP)ouimigrate_all_nis_online.sh
NIS (YP)Nonmigrate_all_nis_offline.sh

Exécutez le script approprié en fonction de votre service de noms existant.

Les fichiers README et migration-tools.txt du répertoire /usr/share/openldap/migration fournissent plus de détails.