Four steps are necessary to install the server : Download the package, Unpack the software, Configure the Makefiles and Build the server.
There are two free distributed LDAP servers : University of Michigan LDAP server and OpenLDAP server. There's also the Netscape Directory Server, which is free only under some conditions (educational institutions get it free, for example).The OpenLDAP server is based on the latest version of the University of Michigan Server and there are mailing lists and aditional documentation avaiable for it. This document supposes that you are using the OpenLDAP server.
It's latest tar gziped version is avaiable on the following address :
If you want to get the latest version of University of Michigan Server, go to this address :
ftp://terminator.rs.itd.umich.edu/ldap
To write this document, I used the OpenLDAP latest stable version and OpenLDAP 1.2.8 on a Slackware Linux machine with kernel 2.2.6. On the OpenLDAP site you can find the latest development and stable versions of the OpenLDAP server. By the time this document was updated, the latest stable version was openldap-stable-990918.tgz, also available through the link openldap-stable.tgz. The latest development version was openldap-1_2_8.tgz.
Now that you have the tar gziped package on your local machine you can unpack it.
First copy the package to a desirable directory, for example /usr/local.
Then use the following command :
tar xvzf openldap-stable.tgz
You can use this command too, as well :
gunzip openldap-stable.tgz | tar xvf -
There are several options that you should like to customize so you can build the best software to your site.
To configure the software you just need 2 steps :
In the file include/ldapconfig.h.edit you can set options like the location of the slapd and slurpd daemons. The file itself is well commented and it's default settings also reflect the most common administrator choices so, if you are in a hurry you can skip this step, and run directly:
vi include/ldapconfig.h.edit
The OpenLDAP server sources are distributed with a configuration script for setting options like instalation directories, compiler and linker flags. Type the following command on the directory where you unpacked the software :
./configure --help
This will print all options that you can customize with the configure script before you build the software. Some usefull options are --prefix=pref , --exec-prefix=eprefix and
--bindir=dir, for setting instalation directories. Normally if you run configure without options, it will auto-detect the appropriate settings and prepar to build things on the default
common location. So just type :
./configure
And watch the output to see if all went well
After configuring the software you can start building it. First build the dependencies, using the command :
make depend
After build the server, using the command :
make
If all goes well, the server will build as configured. If not, return to the previous step to review the configuration settings. You should check the platform specific hints, they are
located in the path doc/install/hints under the directory you unpacked the software.
Now install the binaries and man pages. You may need to be superuser to do this (depending on where you are installing things):
su
make install
That's all, now you have the binary of the server and the binaries of several other utilities. Go to the
next section to see how to configure the operation of your LDAP server.
If before learning how to configure your LDAP server you would like to test the recently built binaries, the latest versions of the OpenLDAP server come with a test script. When this document was updated the test script was not 100% stable for all diagnostics that it performed. Anyway you can try to run it and, if anything goes wrong with the script you can just abort it hitting Ctrl-C. In my case before the script stopped working I could see some successfull messages about the results of the most common diagnostics. To run the test script, go to the subdirectory /test
beneath the path where you unpacked the software and type :
make