在slapd上使用SSL

我设置slapd在Fedora 14上使用SSL。我在/etc/openldap/slapd.d/cn=config.ldif中有以下内容:

olcTLSCACertificateFile: /etc/pki/tls/certs/SSL_CA_Bundle.pem olcTLSCertificateFile: /etc/pki/tls/certs/mydomain.crt olcTLSCertificateKeyFile: /etc/pki/tls/private/mydomain.key olcTLSCipherSuite: HIGH:MEDIUM:-SSLv2 olcTLSVerifyClient: demand 

以及在我的/ etc / sysconfig / ldap中:

 SLAPD_LDAP=no SLAPD_LDAPS=yes 

在我的ldap.conf文件中,我有

 BASE dc=mydomain,dc=com URI ldaps://localhost TLS_CACERTDIR /etc/pki/tls/certs TLS_REQCERT allow 

但是,当我连接到本地主机时,ldapsearch返回以下内容:

 ldap_initialize( <DEFAULT> ) ldap_create Enter LDAP Password: ldap_sasl_bind ldap_send_initial_request ldap_new_connection 1 1 0 ldap_int_open_connection ldap_connect_to_host: TCP localhost:636 ldap_new_socket: 3 ldap_prepare_socket: 3 ldap_connect_to_host: Trying 127.0.0.1:636 ldap_pvt_connect: fd: 3 tm: -1 async: 0 TLS: loaded CA certificate file /etc/pki/tls/certs/978601d0.0 from CA certificate directory /etc/pki/tls/certs. TLS: loaded CA certificate file /etc/pki/tls/certs/b69d4130.0 from CA certificate directory /etc/pki/tls/certs. TLS certificate verification: defer TLS: error: connect - force handshake failure: errno 0 - moznss error -12271 TLS: can't connect: . ldap_err2string ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1) 

我有什么不正确的?

检查你的服务器日志,但我相信你的问题在于olcTLSVerifyClient: demand – 这是要求你的客户端向服务器提交一个证书,以便在握手过程中validation自己的身份,除非你有一个证书(这被认为是可以接受的服务器),你将不被允许连接。

您可能还需要详细了解OpenLDAP和TLS(SSL)的网站 (或此网站 ) – 您的configuration与我所熟悉的示例有所不同。

鉴于你希望客户使用证书来标识自己,你需要告诉客户使用什么证书。 man ldap.conf提供了TLS_CERT和TLS_KEY