[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
RE: Enabling TLS problem on openldap2-2.3.39
On Wed, 21 Nov 2007, Keagle, Chuck wrote:
I have yet to even change the error messages when trying:
# ldapsearch -x -Z -H ldap://testsvr.blv.boeing.com -b "" -s base
'objectclass=*' '+' '*'
ldap_start_tls: Connect error (-11)
additional info: error:14090086:SSL
routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
Looks to me like slapd is sending its cert, but either
1) it doesn't match the hostname in the URI (testsvr.blv.boeing.com), or
2) none of the CAs 'above' it are in the set of CAs trusted to ldapsearch.
So, what's the output of
openssl x509 -text -noout -in /path/to/servers/cert/here.pem
? Does it show testsvr.blv.boeing.com either as a DNS X509v3 Subject
Alternative Name or as the value of a CN attribute in the cert's subject?
If not, there's (part of) your problem, as your cert MUST match the name
in the URI used to locate the server. If that wasn't true, TLS/SSL would
be easily attackable and therefore pointless.
...
#TLSCertificateFile /etc/ssl/servercerts/servercert.pem
TLSCACertificatePath /etc/ssl/certs/
TLSCACertificateFile /etc/ssl/certs/ldapServer.pem
#TLSCertificateKeyFile /etc/ssl/servercerts/serverkey.pem
Wait, so you're running the server without certificate or key files? How
do you think that can possibly work?
...
#####
# Database Configuration Parameters
#####
#TLSCertificateFile /etc/openldap/servercert.pem
#TLSCertificateKeyFile /etc/openldap/serverkey.pem
Another pair of these? What are they doing in the database config part of
your slapd.conf? Don't you keep the directives grouped by function?
...
Here is /etc/openldap/ldap.conf
...
TLS_REQCERT allow
#CBK Added for self-signed certificate
Well, this means that item #2 above (checking of CAs) can't be the
issue, because the 'allow' setting bypasses that check.
(...rendering the TLS negotiation subject to an easy Man-in-the-Middle
attack, of course...)
HOST testsvr.blv.boeing.com
Don't set this. The HOST and PORT settings should never be used.
Indeed, this conflicts with the URI setting you also put in the file!
TLS_CACERT /etc/ssl/certs/ldapServer.pem
If that file is the server's self-signed cert, then you should not need
the TLS_REQCERT option.
Philip Guenther