2.1. Pre-Requirements

To be fully LDAPv3 compliant, OpenLDAP clients and servers require installation of some additional packages. For writing this document, I've used a Mandrake 9.0 box with a 2.4.20 Kernel, manually installing the Berkeley BDB package and SASL libraries.

OpenSSL TLS Libraries

The OpenSSL TLS libraries are normally part of the base system or compose an optional software component. The official OpenSSL url is: http://www.openssl.org

Kerberos Authentication Services

OpenLDAP clients and servers support Kerberos-based authentication services. In particular, OpenLDAP supports SASL/GSSAPI authentication mechanism using either Heimdal or MIT Kerberos V packages. If you desire to use Kerberos-based SASL/GSSAPI authentication, you should install either Heimdal or MIT Kerberos V. Heimdal Kerberos is available from http://www.pdc.kth.se/heimdal MIT Kerberos is available from http://web.mit.edu/kerberos/www

The use of strong authentication services, such as those provided by Kerberos, is highly recommended.

Cyrus's Simple Authentication and Security Layer Libraries

Cyrus's SASL libraries are normally part of the base system or compose an optional software component. Cyrus SASL is available from http://asg.web.cmu.edu/sasl/sasl-library.html. Cyrus SASL will make use of OpenSSL and Kerberos/GSSAPI libraries if preinstalled. By the time of this writing, I've used Cyrus SASL 2.1.17.

Database Software

Slapd's primary database backend, BDB, requires Sleepycat Software Berkeley DB, version 4. If not available at configure time, you will not be able to build slapd with primary database backend.

Your operating system may provide Berkeley DB, version 4, in the base system or as an optional software component. If not, there are several versions available at Sleepycat. At the time of this writing, the latest release, version 4.2.52, is recommended. OpenLDAP's slapd LDBM backend supports a variety of database managers, like Berkeley DB (version 3) and GDBM. GDBM is available from FSF's download site ftp://ftp.gnu.org/pub/gnu/gdbm/.


Threads support are almost guaranteed to be part of your base Linux system. OpenLDAP is designed to take advantage of threads. OpenLDAP supports POSIX pthreads, Mach CThreads, and a number of other varieties. The configure script will complain if it cannot find a suitable thread subsystem. If this occurs, please consult the Software - Installation - Platform Hints section of the OpenLDAP FAQ: http://www.openldap.org/faq/.

TCP Wrappers

Slapd supports TCP wrappers (IP level access control filters) if preinstalled. Use of TCP wrappers or other IP-level access filters (such as those provided by an IP-level firewall) is recommended for servers containing non-public information.