Before you start
This tutorial shows you how to create an LDAP-based backend to store contact information that multiple applications can share easily. Along the way, we give you an overview of LDAP fundamentals and introduce you to a pre-built contact management tool that will help you get started using this open technology.
Almost all e-mail clients on the market today (both open source and proprietary) suffer from at least one fatal, nagging flaw -- the address books they provide for storing contact information make it easy to store data, and notoriously difficult to get that data back out in a form that can be used by other programs.
The material in this tutorial is a direct result of my own personal frustration in easily sharing contact information between e-mail clients, other programs, operating systems, and computers. The solution presented is to use a centrally located LDAP directory service to store e-mail addresses and contact details, and access this information for a wide range of applications as needed.
One caveat up front: To utilize the methods described here, your application(s) must support LDAP access in one form or another. LDAP support is becoming commonplace in most popular e-mail clients and a growing number of other data-driven applications. But be sure to check the documentation provided with your applications before making any dramatic transitions. Even if your program of choice doesn't currently support LDAP access, chances are it will in the near future; by reading through this tutorial, you'll be prepared when that day comes.
On completion of this tutorial, you will:
- Understand the technology behind an LDAP directory, how its database structures are organized, and how an LDAP store is accessed by a client.
- Know how to install and configure an OpenLDAP server.
- Be able to add content to the LDAP directory.
- Understand the general procedures required to allow an LDAP-enabled e-mail client to look up contact information stored in an LDAP directory.
Readers should have a basic working knowledge of common administrative tasks and the concepts behind them. This includes tasks such as setting file permissions, managing user accounts, moving and copying files, creating symlinks, etc.
To follow along with the examples in this tutorial, you need access to a correctly installed and configured Linux system and the following software:
- Red Hat Linux 7.3. Operating system specific instructions are based on Red Hat Linux 7.3 (see Resources). Red Hat Linux was chosen because of its popularity, and because most administrators/users have at least a passing acquaintance with its system layout and conventions.
- OpenLDAP. OpenLDAP is used as an LDAP directory server (see Resources). OpenLDAP is open source, based on open standards, and available as a free download. For the most part, however, the structures, layout, and administrative tasks discussed are readily transferable to commercially available directory servers such as IBM's SecureWay Server and Netscape's Directory Server offering.

