6 votes

Comment définir le mot de passe de l'administrateur sur openldap 2.4 ?

Je commence à utiliser openLdap 2.4 et j'ai un peu de mal, tous les exemples que je vois semblent se référer aux versions précédentes qui utilisaient le fichier de configuration texte slapd.conf mais d'après ce que je vois dans les discussions sur la v2.4, cela a été déprécié.

Je pensais que j'avais peut-être besoin d'ajouter un utilisateur et de me connecter en tant que tel, mais lorsque j'essaie d'exécuter une commande ldapadd, j'obtiens une invite pour entrer un mot de passe :

Enter LDAP Password: 
ldap_bind: Invalid credentials (49)

Notes : J'ai installé le serveur openldap via yum (dans fedora 15), et j'ai installé phpldapadminbut aussi peut essayer des choses sur la ligne de commande si quelqu'un a des suggestions.

Après l'installation et le démarrage, j'obtiens la réponse suivante lors d'une recherche :

# ldapsearch -x -b '' -s base '(objectclass=*)' namingContexts
# extended LDIF
# LDAPv3
# base <> with scope baseObject
# filter: (objectclass=*)
# requesting: namingContexts 
dn:
namingContexts: dc=my-domain,dc=com    
# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1

Je suis heureux de supprimer et de réinstaller le serveur si cela peut aider, quelqu'un peut-il fournir un lien vers des conseils qui fonctionnent pour la version 2.4 pour une nouvelle installation ?

5voto

CVVS Points 181

C'est vieux, mais la question et la non-réponse reviennent souvent dans les recherches. D'abord, lancez slappasswd pour générer un mot de passe.

slappasswd 
New password: ************
Re-enter new password: *************
{SSHA}OM5mbC3/kQPAg8MH6FOqXkATjLjt2IZ2

Utilisez ensuite cette valeur pour alimenter la configuration de votre backend.

ldapmodify -Q -Y EXTERNAL -H ldapi:/// << E0F
dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}qUoTRPwppaedqHQTgYOPYWokr3SiXjbK
E0F

Votre dn peut être différent de celui indiqué ici. Les bases de données de configuration se trouvent, sur RHEL7, dans /etc/openldap/slapd.d/cn=config. Vous pouvez maintenant vous connecter en utilisant le nom d'utilisateur par défaut.

Si vous le souhaitez, vous pouvez définir votre propre valeur pour le dn racine :

ldapmodify -Q -Y EXTERNAL -H ldapi:/// << E0F
dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=manager,dc=example,dc=com
E0F

1voto

RATHEESH KUMAR Points 1

Voici ma solution de travail :

ldapsearch -LLL -Y EXTERNAL -H  ldapi:/// -b cn=config olcRootDN=cn=admin,dc=my,dc=company,dc=com dn olcRootDN olcRootPW

Maintenant, créez un nouveau mot de passe :

NEW_PWD={{TYPE_NEW_PASSWORD_HERE}}

PWD_HASH=$(slappasswd -s ${NEW_PWD})
echo "Your password hash is \"${PWD_HASH}\"."

Collez le code suivant :

ldapmodify -Y EXTERNAL -H ldapi:/// << E0F
dn: olcDatabase={1}mdb,cn=config
replace: olcRootPW
olcRootPW: ${PWD_HASH}
E0F

Vous aurez :

SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
dn: olcDatabase={1}mdb,cn=config
olcRootDN: cn=admin,dc=my,dc=company,dc=com
olcRootPW: {SSHA}k1S8N/A4eb7Ds8oBgAhb9TmPfVT9vl2U

Pour réparer l'accès aux deux mots de passe (l'ancien et le nouveau), collez :

OLD_PWD=admin

ldappasswd -h localhost -p 389 -x -D "cn=admin,dc=my,dc=company,dc=com" -w "${OLD_PWD}" -a "${OLD_PWD}" -s "${NEW_PWD}"

0voto

user207421 Points 970

Slapd.conf fonctionne toujours dans OpenLDAP 2.4, même s'il est 'dé-emphasé' dans la documentation.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X