Share on Social Media

In this tutorial, you will learn, how to create OpenLDAP Address Book in CentOS 7 or other Red hat based Linux servers. #centlinux #linux #openldap

What is OpenLDAP Address Book?

OpenLDAP Address Book is a central database where users can search for email addresses, telephone numbers, addresses, etc. In this post, we will create a Global Address book with OpenLDAP 2.4 Server and access it through Mozilla Thunderbird.

We have already configured a LDAP Server. Therefore, I am skipping the steps of configuring a LDAP Server. However, if you missed it then please follow my previous post “Configure Remote Authentication Server using OpenLDAP 2.4”.

Table of Contents:

System Specification:

The Same Server that I used in my previous posts “Configure Remote Authentication Server using OpenLDAP 2.4” and “OpenLDAP Administration using phpLDAPAdmin”.

Create OpenLDAP Address Book:

Checkout the current structure of our LDAP Directory via phpLDAPAdmin console i.e.


We must add the inetorgperson schema to our LDAP Directory, because we require its objectclasses for our Addressbook entries.

Note: Since I am working on a already configured LDAP Server, therefore I am not adding other core schemas. However, if you are configuring the LDAP Server from scratch, then you must add the cosine schema as well.

# ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/inetorgperson.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
adding new entry "cn=inetorgperson,cn=schema,cn=config"

Let’s create the organizationUnit and add some entries therein.

# cd ~/ldap
# cat > addressbook.ldif << EOF
> dn: ou=AddressBook,dc=itlab,dc=com
> objectClass: organizationalUnit
> ou: AddressBook
> dn: cn=Ahmer Mansoor,ou=AddressBook,dc=itlab,dc=com
> cn: Ahmer Mansoor
> gn: Ahmer
> sn: Mansoor
> mail:
> objectClass: top
> objectClass: inetOrgPerson
> dn: cn=Muhammad Ali,ou=AddressBook,dc=itlab,dc=com
> cn: Muhammad Ali
> gn: Muhammad
> sn: Ali
> mail:
> objectClass: top
> objectClass: inetOrgPerson
> dn: cn=Waseem Hussain,ou=AddressBook,dc=itlab,dc=com
> cn: Waseem Hussain
> gn: Waseem
> sn: Hussain
> mail:
> objectClass: top
> objectClass: inetOrgPerson
> dn: cn=Ashfaq Khan,ou=AddressBook,dc=itlab,dc=com
> cn: Ashfaq Khan
> gn: Ashfaq
> sn: Khan
> mail:
> objectClass: top
> objectClass: inetOrgPerson
> EOF # ldapadd -x -W -D "cn=ldapadm,dc=itlab,dc=com" -f addressbook.ldif
Enter LDAP Password:
adding new entry "ou=AddressBook,dc=itlab,dc=com" adding new entry "cn=Ahmer Mansoor,ou=AddressBook,dc=itlab,dc=com" adding new entry "cn=Muhammad Ali,ou=AddressBook,dc=itlab,dc=com" adding new entry "cn=Waseem Hussain,ou=AddressBook,dc=itlab,dc=com" adding new entry "cn=Ashfaq Khan,ou=AddressBook,dc=itlab,dc=com"

Now, take a look at our LDAP Directory.


We can add as much entries as we like in the same way. However, for the sake of demonstration, I am adding only 4 entries.

Configure Mozilla Thunderbird:

Now our Global Addressbook is configured successfully. Let’s use it in an email client. I am demonstrating it using Mozilla Thunderbird.


Because it is out of scope to configure an email account, therefore, I am skipping it. Click on Addressbook button at toolbar.


Go to File > New > LDAP Directory.


Add our LDAP Directory as follows:


Now, our Global Addressbook has been added in Thunderbird.


Our OpenLDAP Global Address book has been configured successfully.


In this tutorial, you have learned, how to create OpenLDAP Address Book in CentOS 7 or other Red hat based Linux servers.

Leave a Reply

Your email address will not be published. Required fields are marked *