A Technical Overview of OpenLDAP
This book is a practically oriented technical book. It is designed to help you get OpenLDAP up and running, and to help you integrate LDAP into your own applications.
We will now begin this transition from the high-level material presented earlier to a more practical examination of the OpenLDAP suite of packages. First, let's take a brief look at the technical structure of OpenLDAP.
The OpenLDAP suite can be broken up into four components:
-
Servers: Provide LDAP services
-
Clients: Manipulate LDAP data
-
Utilities: Support LDAP servers
-
Libraries: provide programming interfaces to LDAP
In the course of this book, we will look at all four of these categories. Here, we will just get an overview:
This diagram explains how these four elements relate to each other.
The Server
The main server in the LDAP suite is SLAPD (the Stand-Alone LDAP Daemon). This server provides access to one or more directory information trees. Clients connect to the server over the LDAP protocol, usually using a network-based connection (though SLAPD provides a UNIX socket listener, too).
A server can store directory data locally, or simply access (or proxy access) to external sources. Typically, it provides authentication and searching services, and may also support adding, removing, and modifying directory data. It provides fine-grained access control to the directory.
SLAPD is a major focus of this book, and we will discuss it in detail in the chapters to come.
Clients
Clients access LDAP servers over the LDAP network protocol. They function by requesting that the server performs operations on their behalf. Typically, a client will first connect to the directory server, then bind (authenticate), and then perform zero or more other operations (searches, modifications, additions, deletions, and so on) before finally unbinding and disconnecting.
Utilities
Unlike clients, utilities do not perform operations using the LDAP protocol. Instead, they manipulate data at a lower level, and without mediation by the server. They are used primarily to help maintain the server.
Libraries
There are several OpenLDAP libraries that are shared between LDAP applications. The libraries provide LDAP functions to these applications. The clients, utilities, and servers all share access to some of these libraries.
Application Programming Interfaces (APIs) are provided to allow software developers to write their own LDAP-aware applications without having to re-write fundamental LDAP code.
While the APIs provided with OpenLDAP are written in C, the OpenLDAP project also provides two Java APIs. These Java libraries are not included in the OpenLDAP suite, and are not covered in this book. Both however, can be retrieved from the OpenLDAP website: http://openldap.org.
As we move on through this book we will examine each of these components of the LDAP architecture in detail.
'Hacking' 카테고리의 다른 글
Basic of Reverse Engineering (0) | 2008.11.06 |
---|---|
CentOS Update Server and Local Repository (0) | 2008.10.31 |
Linux open files (0) | 2008.10.28 |
Microsoft Urgent Patch (0) | 2008.10.25 |
SSH without PASSWORD (0) | 2008.10.15 |