Create OpenLDAP Global Addressbook on CentOS 7 - CentLinux

Latest

Sunday, 10 June 2018

Create OpenLDAP Global Addressbook on CentOS 7

Create OpenLDAP Global Addressbook on CentOS 7

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

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 on CentOS 7:

Checkout the current structure of our LDAP Directory via phpLDAPAdmin console i.e. http://ldapserver.itlab.com/phpldapadmin

01-openldap-addressbook-centos-7-phpldapadmin-default-page

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.

[root@ldapserver ~]# 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
SASL SSF: 0
adding new entry "cn=inetorgperson,cn=schema,cn=config"

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

[root@ldapserver ~]# cd ~/ldap
[root@ldapserver 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: ahmer@itlab.com
> objectClass: top
> objectClass: inetOrgPerson
>
> dn: cn=Muhammad Ali,ou=AddressBook,dc=itlab,dc=com
> cn: Muhammad Ali
> gn: Muhammad
> sn: Ali
> mail: m_ali@itlab.com
> objectClass: top
> objectClass: inetOrgPerson
>
> dn: cn=Waseem Hussain,ou=AddressBook,dc=itlab,dc=com
> cn: Waseem Hussain
> gn: Waseem
> sn: Hussain
> mail: waseem@itlab.com
> objectClass: top
> objectClass: inetOrgPerson
>
> dn: cn=Ashfaq Khan,ou=AddressBook,dc=itlab,dc=com
> cn: Ashfaq Khan
> gn: Ashfaq
> sn: Khan
> mail: ashfaq@itlab.com
> objectClass: top
> objectClass: inetOrgPerson
> EOF

[root@ldapserver ldap]# 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.

02-openldap-addressbook-centos-7-phpldapadmin-search

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 to use OpenLDAP Addressbook:

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

03-openldap-addressbook-centos-7-thunderbird.jpg

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

04-openldap-addressbook-centos-7-thunderbird

Go to File > New > LDAP Directory.

05-openldap-addressbook-centos-7-thunderbird

Add our LDAP Directory as follows:

06-openldap-addressbook-centos-7-thunderbird

Now, our Global Addressbook has been added in Thunderbird.

07-openldap-addressbook-centos-7-thunderbird08-openldap-addressbook-centos-7-thunderbird

Our OpenLDAP Global Addressbook has been configured successfully.

No comments:

Post a Comment