Hello,
I'm running a bunch of FreeBSD 10.3-RELEASE servers (MX servers, Web servers…). All of them are bound to an LDAP server for user authentication/access.
I can
Today, a user contacted me because he was no longer able to access his crontab:
I've been able to reproduce the problem on every FreeBSD servers. This is not a problem of LDAP server availability: commands like
After digging into the log files, I've found out that those processes/commands have trouble connecting to the LDAP server:
They all fail with this error message:
A
If I change ldap.conf settings to use non-SSL connection
Of course, using ldap:// instead of ldaps:// is not an option in production.
For now I've a workaround: using nscd to cache passwd entries does a great job: as soon as a user entry is cached (
Any idea?
I'm running a bunch of FreeBSD 10.3-RELEASE servers (MX servers, Web servers…). All of them are bound to an LDAP server for user authentication/access.
I can
ssh
to those server with my LDAP account, I can use id
, ldapsearch
and so on without any problem. The LDAP server is queried over TLS (ldaps://...).Today, a user contacted me because he was no longer able to access his crontab:
Code:
$ crontab -e
(very long wait, then: )
crontab: your UID isn't in the passwd file, bailing out
I've been able to reproduce the problem on every FreeBSD servers. This is not a problem of LDAP server availability: commands like
id
and ldapsearch
are working great.After digging into the log files, I've found out that those processes/commands have trouble connecting to the LDAP server:
install
crontab
cron
They all fail with this error message:
Code:
nss_ldap: failed to bind to LDAP server
A
ktrace
of crontab
shows that connection occurs, SSL negotiation starts, then something fails and connection is dropped.If I change ldap.conf settings to use non-SSL connection
crontab
works great.Of course, using ldap:// instead of ldaps:// is not an option in production.
For now I've a workaround: using nscd to cache passwd entries does a great job: as soon as a user entry is cached (
id myuser
for example), this user can use the crontab
command successfully, but it's not a decent solution.Any idea?
Last edited: