Problèmes d'authentification rencontrés et solutions

Pendant le débogage nscd peut masquer les problèmes en fournissant des entrées de son cache, il est donc préférable de stopper nscd (démon de Name Service Caching) avec la commande suivante :

# service nscd stop

Reconfigurer libnss-ldapd et nslcd

Si la configuration post installation ne convient pas il est possible de relancer la configuration de libnss-ldapd et de nslcd avec la commande dpkg-reconfigure.

# dpkg-reconfigure libnss-ldapd

# dpkg-reconfigure nslcd

Truc & astuce

Utilisation de la commande dpkg-reconfigure :

# dpkg-reconfigure libnss-ldapd

et

# dpkg-reconfigure nslcd

Problème de cache

Un ou plusieurs mots de passe de compte utilisateurs ont été changé sur le module Scribe. Il faut rafraîchir le cache de nscd.

Truc & astuceNettoyer le cache

Nettoyer le cache avec la commande nscd :

# nscd -i passwd

# nscd -i group

# nscd -i shadow

Relancer le service permet également de vider le cache :

# service nscd restart

Truc & astuceUtiliser l'outil nss-updatedb

Le paquet nss-updatedb fourni la commande nss_updatedb qui permet de créer des bases de données de type Berkeley DB stockant les données équivalentes aux passwd et group du NSS. Il faut l'invoquer régulièrement afin de maintenir à jour ces bases de données.

Cela permet à un utilisateur du domaine de se reconnecter à sa session lorsqu'il est hors ligne.

Installer l'outil nss-updatedb :

root@pclinux:/etc# apt-get install nss-updatedb

Lecture des listes de paquets... Fait

Utiliser manuellement l'outil nss-updatedb :

root@pclinux:/etc# nss_updatedb ldap

passwd... done.

group... done.

Il faut informer le système qu'il peut utiliser ces bases de données comme source pour passwd, group et shadow en ajoutant db aux entrées respectives du fichier /etc/nsswitch.conf :

passwd: compat ldap db

group: compat ldap db

shadow: compat ldap db

Truc & astuceDésactiver le cache de nscd

Il est possible de désactiver le cache dans le fichier de configuration /etc/nscd.conf en ajoutant les options désirées :

enable-cache passwd no

enable-cache group no

enable-cache shadow no

Pour en savoir plus, consulter le manuel à l'aide de la commande man :

# man nscd.conf

Perte de l'authentification

Il n'est plus possible de se connecter depuis le poste client ni avec le gestionnaire de connexion (display manager) ni en ligne de commande dans un tty.

Truc & astuce

Il faut s'assurer du bon fonctionnement du module Scribe avec la commande diagnose.

Il faut ensuite tester si le service LDAP distant répond :

root@pclinux:/home/eole# ldapsearch -h scribe:389 -b o=gouv,c=fr -x uid=utilisateurScribe

la commande getent :

# getent passwd test.prof

Si elle ne renvoie plus rien il faut relancer le service nscd avec la commande suivante :

# service nscd restart

Activer et consulter les logs de nscd

L'activation des logs pour nscd se fait dans le fichier /etc/nscd.conf.

Il faut dé-commenter la ligne logfile /var/log/nscd.log et passer la variable debug-level à 1 ou plus de verbosité.

Pour plus d'information il faut consulter la page de manuel :

# man nscd.conf

Pour rendre effectif le changement il faut relancer le service :

root@pclinux:/home/eole# service nscd restart

La consultation des journaux se fait à l'aide de la commande tail :

root@pclinux:/home/eole# tail -f /var/log/nscd.log

Pour lancer le service libnss-ldapd en mode débogage

Arrêter nscd

# service nscd stop

Arrêter le démon de libnss-ldapd

# service nslcd stop

Lancer le démon de libnss-ldapd en mode débogage

# nslcd -d