Pour vous aider un peu plus, je vous fournis mes fichiers de config :
ldap.conf
[code]#BASE dc=example,dc=com
#URI ldap://ldap.example.com ldap://ldap-master.example.com:666
#SIZELIMIT 12
#TIMELIMIT 15
#DEREF never
LDAP Client Settings
uri ldap://127.0.0.1:389/
BASE dc=lra,dc=gm[/code]
slapd.conf
[code]# This is the main slapd configuration file. See slapd.conf(5) for more
info on the configuration options.
#######################################################################
Global Directives:
Features to permit
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
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
#######################################################################
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=lra,dc=gm
rootdn directive for specifying a superuser on the database. This is needed
for syncrepl.
rootdn “cn=admin,dc=lra,dc=gm”
rootpw test
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
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 attribute=userPassword
by dn=“cn=admin,dc=lra,dc=gm” 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 (and possible other things) to work
happily.
access to dn.base="" by * read
The admin dn has full write access, everyone else
can read everything.
access to *
by dn=“cn=admin,dc=lra,dc=gm” write
by * read
For Netscape Roaming support, each user gets a roaming
profile for which they have write access to
#access to dn=".*,ou=Roaming,o=morsnet"
by dn=“cn=admin,dc=citroen,dc=gm” write
by dnattr=owner write
#######################################################################
Specific Directives for database #2, of type ‘other’ (can be hdb too):
Database specific directives apply to this databasse until another
‘database’ directive occurs
#database
The base of your directory for database #2
#suffix “dc=debian,dc=gm”[/code]
Quelques commandes que j’exécute sur la console :
uname -a
Linux debian.lra.gm 2.6.32-5-amd64
ldapsearch -x -b dc=lra,dc=gm
[code]# extended LDIF
LDAPv3
base <dc=lra,dc=gm> with scope subtree
filter: (objectclass=*)
requesting: ALL
search result
search: 2
result: 32 No such object
numResponses: 1[/code]
Quand je veux injecter un fichier .ldif
ldapadd -x -D “cn=admin,dc=lra,dc=gm” -w test -f /etc/AjoutRacine.ldif
ldap_bind: Invalid credentials (49)
Quand je veux accéder à la base de données ou créer un arbre sur le serveur LDAP depuis le Webmin (1.610), je tombe sur ce message d’erreur :
Failed to create new tree : Failed to bind to LDAP server as admin : invalid DN
Voili, voilou, j’espère que les amateurs du LDAP sauront m’aider car là … je suis à court d’idées !
(Je ne vois pas pourquoi mon DN est invalide?!)