1

I'm starting with LDAP and trying to configure all in this tutorial step by step: http://wiki.openiam.com/pages/viewpage.action?pageId=7635198

But when I'm in 10th step:

ldapsearch -h localhost -D "cn=Manager,dc=openiamdemo,dc=com" -w openiam -b "dc=openiamdemo,dc=com" -s sub "objectclass=*"

Throws me an error (login error): ldap_bind: Invalid credentials (49)

I've checked some StackOverflow questions that didn't solve the problem.

ldap.conf file:

#
# LDAP Defaults
#

# See ldap.conf(5) for details
# This file should be world readable but not world writable.

#BASE   dc=example,dc=com
#URI    ldap://ldap.example.com ldap://ldap-master.example.com:666

#SIZELIMIT      12
#TIMELIMIT      15
#DEREF          never

TLS_CACERTDIR   /etc/openldap/certs

# Turning this off breaks GSSAPI used with krb5 when rdns = false
SASL_NOCANON    on

slapd.conf:

#
# See slapd.conf(5) for details on configuration options.
# This file should NOT be world readable.
#
include     /etc/openldap/schema/core.schema
include     /etc/openldap/schema/cosine.schema
include     /etc/openldap/schema/inetorgperson.schema
include     /etc/openldap/schema/nis.schema
#
# Added for policy
include     /etc/openldap/schema/ppolicy.schema
#
# Allow LDAPv2 client connections.  This is NOT the default.
allow bind_v2
#
# Do not enable referrals until AFTER you have a working directory
# service AND an understanding of referrals.
#referral   ldap://root.openldap.org
#
pidfile     /var/run/openldap/slapd.pid
argsfile    /var/run/openldap/slapd.args
#
# Load dynamic backend modules:
# modulepath    /usr/lib64/openldap
#
# Modules available in openldap-servers-overlays RPM package
# Module syncprov.la is now statically linked with slapd and there
# is no need to load it here
# moduleload accesslog.la
# moduleload auditlog.la
# moduleload denyop.la
# moduleload dyngroup.la
# moduleload dynlist.la
# moduleload lastmod.la
# moduleload pcache.la
#
moduleload ppolicy.la
#
# moduleload refint.la
# moduleload retcode.la
# moduleload rwm.la
# moduleload smbk5pwd.la
# moduleload translucent.la
# moduleload unique.la
# moduleload valsort.la
#
# modules available in openldap-servers-sql RPM package:
# moduleload back_sql.la
#
# The next three lines allow use of TLS for encrypting connections using a
# dummy test certificate which you can generate by changing to
# /etc/pki/tls/certs, running "make slapd.pem", and fixing permissions on
# slapd.pem so that the ldap user or group can read it.  Your client software
# may balk at self-signed certificates, however.
# TLSCACertificateFile /etc/pki/tls/certs/ca-bundle.crt
# TLSCertificateFile /etc/pki/tls/certs/slapd.pem
# TLSCertificateKeyFile /etc/pki/tls/certs/slapd.pem
#
# Sample security restrictions
#   Require integrity protection (prevent hijacking)
#   Require 112-bit (3DES or better) encryption for updates
#   Require 63-bit encryption for simple bind
# security ssf=1 update_ssf=112 simple_bind=64
#
# Sample access control policy:
#   Root DSE: allow anyone to read it
#   Subschema (sub)entry DSE: allow anyone to read it
#   Other DSEs:
#       Allow self write access
#       Allow authenticated users read access
#       Allow anonymous users to authenticate
#   Directives needed to implement policy:
# access to dn.base="" by * read
# access to dn.base="cn=Subschema" by * read
# access to *
#   by self write
#   by users read
#   by anonymous auth
#
# if no access controls are present, the default policy
# allows anyone and everyone to read anything but restricts
# updates to rootdn.  (e.g., "access to * by * read")
#
# rootdn can always read and write EVERYTHING!
#
#######################################################################
# ldbm and/or bdb database definitions
#######################################################################
#
database    bdb
suffix      "dc=openiamdemo,dc=com"
rootdn      "cn=Manager,dc=openiamdemo,dc=com"
rootpw      {SSHA}fC3sxHp0URvsSNagOwIRBaG1CzJZG3pq
#
#
#
# PPolicy Configuration
overlay ppolicy
ppolicy_default "cn=default,ou=policies,dc=openiamdemo,dc=com"
ppolicy_use_lockout
ppolicy_hash_cleartext

# The database directory MUST exist prior to running slapd AND
# should only be accessible by the slapd and slap tools.
# Mode 700 recommended.
directory   /var/lib/ldap

# Indices to maintain for this database
index objectClass                       eq,pres
index ou,cn,mail,surname,givenname      eq,pres,sub
index uidNumber,gidNumber,loginShell    eq,pres
index uid,memberUid                     eq,pres,sub
index nisMapName,nisMapEntry            eq,pres,sub

Also I checked syslog into /var/log but it doesn't appear nothing about this.

Previusly of all, I generated the ldap pass with slappasswd and included the SSHA into slap.conf.

Any hint to solve it?

PD: I'm working on CentOS 7 and in my openldap directory are these files:

# ls
certs                ldap.conf           ppolicy.ldif  slapd.conf
check_password.conf  ldap.conf.original  schema        slapd.d.original
  • That tutorial is worthless even on CentOS 6, as it completely ignores the modern way of configuring OpenLDAP via the cn=config tree and still relies on a text config file. Forget it and search for something better / more modern. – Sven Jan 12 '15 at 10:27
  • Ouch! :/ You know someone better that can help me?? I appreciate so much! – Neil Jan 12 '15 at 10:31
  • Is this better: emmanuel.iffly.free.fr/doku.php?id=ldap:openldap2.4_centos? – Neil Jan 12 '15 at 10:33
  • For a super-short guide to get the absolute basics runnning, see this old answer I posted a while ago: serverfault.com/questions/587721/… (this was for CentOS 6, not tested on 7). And yes, the second links looks better on first glance. – Sven Jan 12 '15 at 10:34
  • Your answer is hard to follow for a beginner. – Neil Jan 12 '15 at 10:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.