Since LDAP is an open standard protocol, all of the information needed to create an LDAPv3-compliant server is freely available (see the LDAP Reference Materials for links to the relevant documents). As such, there are several available types of directory servers. Some of the most notable implementations are listed below:


Editor’s note: I am one of the creators of the Ping Identity Directory Server (formerly UnboundID Directory Server) and have been its lead developer since its creation. Since I would obviously be biased, and since I want this site to be as neutral as possible to promote the use of LDAP in general, I will avoid any attempt at ranking or assessing the quality of any of these implementations. Instead, they will be listed in alphabetical order.

If you have any suggestions for other directory servers to include on this page, please email them to feedback@ldap.com.

  • Symas OpenLDAP (an enhanced version of OpenLDAP with available commercial support)

Alternately, if you’re developing an LDAP-enabled application and wish to have access to a directory server for use in your testing framework, it may be helpful to use a library designed for this purpose. Some of these options include:

  • Go
    • glauth can be used as a simple LDAP server for testing purposes.
  • JavaScript
    • ldapjs provides a framework for acting as an LDAP server
  • Python
    • python-ldap-test provides a Python framework for programatically creating an in-memory LDAP server (uses the UnboundID LDAP SDK for Java behind the scenes)
  • Ruby