slapd won't start with nss_ldap.conf

Jonathan McKeown jonathan+freebsd-questions at hst.org.za
Fri May 9 20:43:47 UTC 2008


On Friday 09 May 2008 14:36, Robert Fitzpatrick wrote:
> On a FreeBSD 6.1 with openldap-server-2.3.39, I have setup nss_ldap and
> pam_ldap, but cannot get slapd to start as long as I have nss_ldap.conf
> present, it just hangs and nothing in the messages or debug logs. I just
> copied ldap.conf to nss_ldap.conf, see contents below.

To try and identify the problem, can I ask - when you say slapd doesn't start, 
how long have you waited?

There is a chicken-and-egg problem with slapd on a host which is running 
nss_ldap. To start a process, the system has to adopt the user and group 
privileges of the process owner, which means enumerating all the groups for 
that user from every source of group information - including LDAP on a system 
running nss_ldap.

So, to start slapd, the system needs the group info for user ldap - from 
slapd. It times out and retries a few times, and eventually starts slapd 
using the group information from /etc/passwd and /etc/group, but the timeout 
and retry options by default take several minutes.

The delay can be even longer depending how many other services are being 
started first and therefore how many nss_ldap lookup timeouts occur during 
boot.

There are a number of possible solutions depending which version of nss_ldap 
you're running - searching for nss_ldap bind_policy nss_reconnect_tries will 
produce a number of suggestions and ``problem reports''.

Jonathan


More information about the freebsd-questions mailing list