389 Directory Server


The 389 Directory Server is an Lightweight Directory Access Protocol server developed by Red Hat as part of the community-supported Fedora Project. The name "389" derives from the port number used by LDAP.
389 Directory Server supports many operating systems, including Fedora, Red Hat Enterprise Linux, Debian, Solaris, and HP-UX 11i. In late 2016 the project merged experimental FreeBSD support.
However, the 389 Directory Server team as of 2017 is likely to remove HPUX and Solaris support in the upcoming 1.4.x series.
The 389 source code is generally available under the GNU General Public License version 3; some components have an exception for plugin code, while other components use LGPLv2 or Apache. Red Hat also markets a commercial version of the project as Red Hat Directory Server as part of support contracts for RHEL.

History

389 Directory Server is derived from the original University of Michigan slapd project. In 1996, the project's developers were hired by Netscape Communications Corporation and the project became known as the Netscape Directory Server. After acquiring Netscape, AOL sold ownership of the NDS intellectual property to Sun Microsystems, but retained rights akin to ownership. Sun sold and developed the Netscape Directory Server under the name JES/SunOne Directory Server, now Oracle Directory Server since the takeover of Sun by Oracle. AOL/Netscape's rights were acquired by Red Hat, and on June 1, 2005, much of the source code was released as free software under the terms of the GNU General Public License.
As of 389 Directory Server version 1.0, Red Hat released as free software all of the remaining source code for all components included in the release package and continues to maintain them under their respective licenses.
In May 2009 the Fedora Directory Server project changed its name to 389 to give the project a distribution and vendor neutral name and encourage porting or running the software on other operating systems.

Features

389 Directory server is an rfc4511 compliant server. The project has a focus on ease of use, stability, correctness and performance.

Supported RFCs

This is a subset of the RFCs that 389 Directory Server supports.
RFCDescription
1274COSINE and x.500 schema
2222Simple Authentication and Security Layer
2830Lightweight Directory Access Protocol : Extension for Transport Layer Security
4527Read Entry Controls

Non RFC Features

In addition to supported RFCS, 389 Directory Server supports a number of features unique to the project.
Name of featureDescription
MemberOfMemberOf provides reverse group links from group members
Class of ServiceApply virtual attributes from a template to entries
Distributed Numeric AssignmentAutomatically create uidNumber/gidNumber from server id allocations
Multimaster ReplicationAllows multiple writeable masters to asynchronously replicate data.
AutoscalingThe server automatically scales up and down based on hardware size