web-dev-qa-db-fra.com

Comment autoriser un utilisateur LDAP à changer de mot de passe?

Je veux permettre à l'utilisateur LDAP de changer leur mot de passe mais comment?
passwd? ou ldappasswd? Cela ne fonctionnera pas pour moi cette fois.
Quelles seront les configurations pour cela afin que l'utilisateur puisse changer ses mots de passe avec succès?

Toute aide fera l'affaire. Merci.

6
ckknight

J'ai trouvé la solution sur http://ubuntuforums.org/showthread.php?t=164007

À /etc/pam.d/common-password

#
# /etc/pam.d/common-password - password-related modules common to all services
# -- removed comment header talking about various options --

# here are the per-package modules (the "Primary" block)
password    [success=2 default=ignore]  pam_unix.so obscure sha512
password    [success=1 user_unknown=ignore default=die] pam_ldap.so use_authtok try_first_pass
# here's the fallback if no module succeeds
password    requisite           pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
password    required            pam_permit.so
# and here are more per-package modules (the "Additional" block)
password    optional    pam_gnome_keyring.so 
# end of pam-auth-update config

Essayez de supprimer le paramètre use_authtok et enregistrez le fichier. Vous devrez peut-être redémarrer.
-Tim

Ça marche! Tee hee

2
ckknight

dans la règle de contrôle d'accès en écriture slapd.conf

access to attrs=userPassword   
by self =xw

Mais vous devez savoir que des règles spécifiques doivent être écrites en premier et une règle générale à la fin.
Par exemple, la règle suivante doit être écrite à la fin.

access to * by * read 

pour plus d'informations, visitez: http://www.openldap.org/doc/admin24/access-control.html

PLUS D'INFO
slapd.conf est généralement situé dans

/etc/openldap or  
/etc/ldap/ or 
/usr/local/etc/openldap/ or  
/usr/local/etc/ldap/  

Certaines modifications ont été apportées aux versions plus récentes de ldap pour lesquelles slapd.conf est pris en charge, mais les données sont stockées par défaut dans le répertoire slapd.d. si vous mettez votre slapd.conf personnalisé ici, le processus lira slapd.conf au lieu du répertoire slapd.d

Choses à remarquer

  1. parfois, slapd.conf est présent dans les chemins local et global, essayez de changer les deux
  2. supprime le répertoire slapd.d car il est utilisé par défaut pour que slapd.conf fonctionne
4
Gaurav