Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 05/05/2009, à 13:55

vinz78

ldap_bind: Invalid credentials (49)

Bonjour à tous,

J'ai commencé à monter un serveur LDAP pour un projet. J'ai recommencé déjà pas mal de fois en suivant beaucoup de tuto différent et j'en arrive toujours à cette même erreur :

ldap_bind: Invalid credentials (49)

Elle arrive quand j'essaye de faire des commandes ldap comme

sudo ldapadd -x -D "dc=thivin,dc=fr" -W  -f direction.ldif

J'ai cherché sur pas mal de forum mais je ne vois que très rarement de réponses vraiment efficaces je fais donc appel à vous.

Voici mes différents fichiers si sa peu aider :

slapd.conf

# This is the main slapd configuration file. See slapd.conf(5) for more
# info on the configuration options.

#######################################################################
# Global Directives:

# Features to permit
allow bind_anon_dn

# Schema and objectClass definitions
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/samba.schema
include /etc/ldap/schema/openldap.schema

# Where the pid file is put. The init.d script
# will not stop the server if you change this.
pidfile         /var/run/slapd/slapd.pid

# List of arguments that were passed to the server
argsfile        /var/run/slapd/slapd.args

# Read slapd.conf(5) for possible values
loglevel        none

# Where the dynamically loaded modules are stored
modulepath    /usr/lib/ldap
moduleload    back_hdb

# The maximum number of entries that is returned for a search operation
sizelimit 500

# The tool-threads parameter sets the actual amount of cpu's that is used
# for indexing.
tool-threads 1

#######################################################################
# Specific Backend Directives for hdb:
# Backend specific directives apply to this backend until another
# 'backend' directive occurs
backend        hdb

#######################################################################
# Specific Backend Directives for 'other':
# Backend specific directives apply to this backend until another
# 'backend' directive occurs
#backend        <other>

#######################################################################
# Specific Directives for database #1, of type hdb:
# Database specific directives apply to this databasse until another
# 'database' directive occurs
database        hdb

# The base of your directory in database #1
suffix dc=thivin,dc=fr

# rootdn directive for specifying a superuser on the database. This is needed
# for syncrepl.
rootdn cn=admin,dc=thivin,dc=fr
rootpw {CRYPT}luF/9biM8IrCQ
#rootpw {SSHA}cV38OcSAnDgSUOCnwvDKJ8g2uyHN2juC


# Where the database file are physically stored for database #1
directory       "/var/lib/ldap"

# The dbconfig settings are used to generate a DB_CONFIG file the first
# time slapd starts.  They do NOT override existing an existing DB_CONFIG
# file.  You should therefore change these settings in DB_CONFIG directly
# or remove DB_CONFIG and restart slapd for changes to take effect.

# For the Debian package we use 2MB as default but be sure to update this
# value if you have plenty of RAM
dbconfig set_cachesize 0 2097152 0

# Sven Hartge reported that he had to set this value incredibly high
# to get slapd running at all. See http://bugs.debian.org/303057 for more
# information.

# Number of objects that can be locked at the same time.
dbconfig set_lk_max_objects 1500
# Number of locks (both requested and granted)
dbconfig set_lk_max_locks 1500
# Number of lockers
dbconfig set_lk_max_lockers 1500

# Indexing options for database #1
index           objectClass eq

# Save the time that the entry gets modified, for database #1
lastmod         on

# Checkpoint the BerkeleyDB database periodically in case of system
# failure and to speed slapd shutdown.
checkpoint      512 30

# Where to store the replica logs for database #1
# replogfile    /var/lib/ldap/replog

# The userPassword by default can be changed
# by the entry owning it if they are authenticated.
# Others should not be able to see it, except the
# admin entry below
# These access lines apply to database #1 only

access to attrs=userPassword,shadowLastChange
        by dn="cn=admin,dc=thivin,dc=fr" write
        by anonymous auth
        by self write
        by * none

# Ensure read access to the base for things like
# supportedSASLMechanisms.  Without this you may
# have problems with SASL not knowing what
# mechanisms are available and the like.
# Note that this is covered by the 'access to *'
# ACL below too but if you change that as people
# are wont to do you'll still need this if you
# want SASL

et mon fichier .ldif

# Racine
dn: dc=thivin,dc=fr
changetype: add
objectclass: top
objectclass: dcObject
objectclass: organization
o: thivin
dc: thivin
description: Racine de l'annuaire

# Administrateur
dn: cn=admin,ou=Users,dc=thivin,dc=fr
cn: admin
objectclass: top
objectclass: organizationalRole
objectclass: simpleSecurityObject
userPassword: {CRYPT}luF/9biM8IrCQ
#userPassword: {SSHA}cV38OcSAnDgSUOCnwvDKJ8g2uyHN2juC

# Conteneur de machines
dn: ou=Computers,dc=thivin,dc=fr
objectclass: top
objectclass: organizationalUnit
ou: Computers

# Conteneur d'utilisateurs
dn: ou=Users,dc=thivin,dc=fr
objectclass: top
objectclass: organizationalUnit
ou: Users

# Manager LDAP
dn: cn=Manager,dc=thivin,dc=fr
objectclass: organizationalRole
cn: Manager
description: LDAP Manager

# Organization for Samba Base
dn: dc=thivin,dc=fr
objectclass: dcObject
objectclass: organization
dc: thivin
o: Samba 3
description: Samba 3
 
# Utilisateur Vincent Fillol
dn: uid=vincent,ou=Users,dc=thivin,dc=fr
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid= vincent
sn= Fillol
givenName: Vincent
cn: Vincent Fillol
telephonenumber: 84756
loginShell: /bin/bash
homeDirectory: /home/lionel
title: System Administrator
initials: VF

#2 Le 06/05/2009, à 08:49

vinz78

Re : ldap_bind: Invalid credentials (49)

vinz78 a écrit :

Bonjour à tous,

J'ai commencé à monter un serveur LDAP pour un projet. J'ai recommencé déjà pas mal de fois en suivant beaucoup de tuto différent et j'en arrive toujours à cette même erreur :

ldap_bind: Invalid credentials (49)

Elle arrive quand j'essaye de faire des commandes ldap comme

sudo ldapadd -x -D "dc=thivin,dc=fr" -W  -f direction.ldif

J'ai cherché sur pas mal de forum mais je ne vois que très rarement de réponses vraiment efficaces je fais donc appel à vous.

Voici mes différents fichiers si sa peu aider :

slapd.conf

# This is the main slapd configuration file. See slapd.conf(5) for more
# info on the configuration options.

#######################################################################
# Global Directives:

# Features to permit
allow bind_anon_dn

# Schema and objectClass definitions
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/samba.schema
include /etc/ldap/schema/openldap.schema

# Where the pid file is put. The init.d script
# will not stop the server if you change this.
pidfile         /var/run/slapd/slapd.pid

# List of arguments that were passed to the server
argsfile        /var/run/slapd/slapd.args

# Read slapd.conf(5) for possible values
loglevel        none

# Where the dynamically loaded modules are stored
modulepath    /usr/lib/ldap
moduleload    back_hdb

# The maximum number of entries that is returned for a search operation
sizelimit 500

# The tool-threads parameter sets the actual amount of cpu's that is used
# for indexing.
tool-threads 1

#######################################################################
# Specific Backend Directives for hdb:
# Backend specific directives apply to this backend until another
# 'backend' directive occurs
backend        hdb

#######################################################################
# Specific Backend Directives for 'other':
# Backend specific directives apply to this backend until another
# 'backend' directive occurs
#backend        <other>

#######################################################################
# Specific Directives for database #1, of type hdb:
# Database specific directives apply to this databasse until another
# 'database' directive occurs
database        hdb

# The base of your directory in database #1
suffix dc=thivin,dc=fr

# rootdn directive for specifying a superuser on the database. This is needed
# for syncrepl.
rootdn cn=admin,dc=thivin,dc=fr
rootpw {CRYPT}luF/9biM8IrCQ
#rootpw {SSHA}cV38OcSAnDgSUOCnwvDKJ8g2uyHN2juC


# Where the database file are physically stored for database #1
directory       "/var/lib/ldap"

# The dbconfig settings are used to generate a DB_CONFIG file the first
# time slapd starts.  They do NOT override existing an existing DB_CONFIG
# file.  You should therefore change these settings in DB_CONFIG directly
# or remove DB_CONFIG and restart slapd for changes to take effect.

# For the Debian package we use 2MB as default but be sure to update this
# value if you have plenty of RAM
dbconfig set_cachesize 0 2097152 0

# Sven Hartge reported that he had to set this value incredibly high
# to get slapd running at all. See http://bugs.debian.org/303057 for more
# information.

# Number of objects that can be locked at the same time.
dbconfig set_lk_max_objects 1500
# Number of locks (both requested and granted)
dbconfig set_lk_max_locks 1500
# Number of lockers
dbconfig set_lk_max_lockers 1500

# Indexing options for database #1
index           objectClass eq

# Save the time that the entry gets modified, for database #1
lastmod         on

# Checkpoint the BerkeleyDB database periodically in case of system
# failure and to speed slapd shutdown.
checkpoint      512 30

# Where to store the replica logs for database #1
# replogfile    /var/lib/ldap/replog

# The userPassword by default can be changed
# by the entry owning it if they are authenticated.
# Others should not be able to see it, except the
# admin entry below
# These access lines apply to database #1 only

access to attrs=userPassword,shadowLastChange
        by dn="cn=admin,dc=thivin,dc=fr" write
        by anonymous auth
        by self write
        by * none

# Ensure read access to the base for things like
# supportedSASLMechanisms.  Without this you may
# have problems with SASL not knowing what
# mechanisms are available and the like.
# Note that this is covered by the 'access to *'
# ACL below too but if you change that as people
# are wont to do you'll still need this if you
# want SASL

et mon fichier .ldif

# Racine
dn: dc=thivin,dc=fr
changetype: add
objectclass: top
objectclass: dcObject
objectclass: organization
o: thivin
dc: thivin
description: Racine de l'annuaire

# Administrateur
dn: cn=admin,ou=Users,dc=thivin,dc=fr
cn: admin
objectclass: top
objectclass: organizationalRole
objectclass: simpleSecurityObject
userPassword: {CRYPT}luF/9biM8IrCQ
#userPassword: {SSHA}cV38OcSAnDgSUOCnwvDKJ8g2uyHN2juC

# Conteneur de machines
dn: ou=Computers,dc=thivin,dc=fr
objectclass: top
objectclass: organizationalUnit
ou: Computers

# Conteneur d'utilisateurs
dn: ou=Users,dc=thivin,dc=fr
objectclass: top
objectclass: organizationalUnit
ou: Users

# Manager LDAP
dn: cn=Manager,dc=thivin,dc=fr
objectclass: organizationalRole
cn: Manager
description: LDAP Manager

# Organization for Samba Base
dn: dc=thivin,dc=fr
objectclass: dcObject
objectclass: organization
dc: thivin
o: Samba 3
description: Samba 3
 
# Utilisateur Vincent Fillol
dn: uid=vincent,ou=Users,dc=thivin,dc=fr
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid= vincent
sn= Fillol
givenName: Vincent
cn: Vincent Fillol
telephonenumber: 84756
loginShell: /bin/bash
homeDirectory: /home/lionel
title: System Administrator
initials: VF

un ptit up !

#3 Le 08/05/2009, à 17:19

energikzen

Re : ldap_bind: Invalid credentials (49)

Hey !
Que veux-tu faire exactement ?


Scripts OK : DNS DHCP DDNS LDAP
Script a finalisé: Serveur secondaire (DNS/DHCP)
Configuration virtualisé : 2 serveurs Debian/Lenny, 1 client Debian et un client XP         :D ;)

Hors ligne

#4 Le 08/05/2009, à 22:13

JoelS

Re : ldap_bind: Invalid credentials (49)

vinz78 a écrit :

J'ai commencé à monter un serveur LDAP pour un projet. J'ai recommencé déjà pas mal de fois en suivant beaucoup de tuto différent et j'en arrive toujours à cette même erreur :

ldap_bind: Invalid credentials (49)

Elle arrive quand j'essaye de faire des commandes ldap comme

sudo ldapadd -x -D "dc=thivin,dc=fr" -W  -f direction.ldif

J'ai cherché sur pas mal de forum mais je ne vois que très rarement de réponses vraiment efficaces je fais donc appel à vous.

...
database        hdb
# The base of your directory in database #1
suffix dc=thivin,dc=fr
# rootdn directive for specifying a superuser on the database. This is needed
# for syncrepl.
rootdn cn=admin,dc=thivin,dc=fr
rootpw {CRYPT}luF/9biM8IrCQ
#rootpw {SSHA}cV38OcSAnDgSUOCnwvDKJ8g2uyHN2juC
...
# The userPassword by default can be changed
# by the entry owning it if they are authenticated.
# Others should not be able to see it, except the
# admin entry below
# These access lines apply to database #1 only
access to attrs=userPassword,shadowLastChange
        by dn="cn=admin,dc=thivin,dc=fr" write
        by anonymous auth
        by self write
        by * none

D'après ton fichier, le root (le directory manager) de la base dc=thivin,dc=fr, c'est cn=admin,dc=thivin,dc=fr, pas dc=thivin,dc=fr, et il a un mot de passe (encore heureux). D'après ton exemple ldapadd, tu n'utilises pas le bon DN après l'argument -D et il n'y a rien après l'argument -W, donc tu n'as pas mis le mot de passe.

Tu as mis un ACI pour restreindre les accès à certains attributs, c'est bien. Les ACIs s'appliquent à toutes les entrées du LDAP, excepté au directory manager. Mais comme il y a un mot de passe défini pour le directory manager, celui-ci doit s'authentifier pour avoir accès à la base LDAP.

Attention, le directory manager d'une base LDAP n'est pas le user root d'Unix. Donc tu n'as aucune raison de faire un sudo avant ton ldapadd, du moment que tu connais le DN du root LDAP et son mot de passe (sauf si bien sûr le binaire ldapadd n'est accessible que par root, mais j'en doute).

Hors ligne

#5 Le 14/05/2009, à 15:31

vinz78

Re : ldap_bind: Invalid credentials (49)

JoelS a écrit :
vinz78 a écrit :

J'ai commencé à monter un serveur LDAP pour un projet. J'ai recommencé déjà pas mal de fois en suivant beaucoup de tuto différent et j'en arrive toujours à cette même erreur :

ldap_bind: Invalid credentials (49)

Elle arrive quand j'essaye de faire des commandes ldap comme

sudo ldapadd -x -D "dc=thivin,dc=fr" -W  -f direction.ldif

J'ai cherché sur pas mal de forum mais je ne vois que très rarement de réponses vraiment efficaces je fais donc appel à vous.

...
database        hdb
# The base of your directory in database #1
suffix dc=thivin,dc=fr
# rootdn directive for specifying a superuser on the database. This is needed
# for syncrepl.
rootdn cn=admin,dc=thivin,dc=fr
rootpw {CRYPT}luF/9biM8IrCQ
#rootpw {SSHA}cV38OcSAnDgSUOCnwvDKJ8g2uyHN2juC
...
# The userPassword by default can be changed
# by the entry owning it if they are authenticated.
# Others should not be able to see it, except the
# admin entry below
# These access lines apply to database #1 only
access to attrs=userPassword,shadowLastChange
        by dn="cn=admin,dc=thivin,dc=fr" write
        by anonymous auth
        by self write
        by * none

D'après ton fichier, le root (le directory manager) de la base dc=thivin,dc=fr, c'est cn=admin,dc=thivin,dc=fr, pas dc=thivin,dc=fr, et il a un mot de passe (encore heureux). D'après ton exemple ldapadd, tu n'utilises pas le bon DN après l'argument -D et il n'y a rien après l'argument -W, donc tu n'as pas mis le mot de passe.

Tu as mis un ACI pour restreindre les accès à certains attributs, c'est bien. Les ACIs s'appliquent à toutes les entrées du LDAP, excepté au directory manager. Mais comme il y a un mot de passe défini pour le directory manager, celui-ci doit s'authentifier pour avoir accès à la base LDAP.

Attention, le directory manager d'une base LDAP n'est pas le user root d'Unix. Donc tu n'as aucune raison de faire un sudo avant ton ldapadd, du moment que tu connais le DN du root LDAP et son mot de passe (sauf si bien sûr le binaire ldapadd n'est accessible que par root, mais j'en doute).

Merci pour la réponse

Effectivement mon problème vient de la, j'ai recommencé tout depuis le début et plus aucun problème à ce niveau la smile. Bon sa m'empêche pas d'avoir des problèmes ailleurs par contre xD

bonne journée