LDAP (Lightweight Directory Access Protocol)

LDAP (Lightweight Directory Access Protocol) adalah sebuah protokol aplikasi yang mengatur mekanisme pengaksesan layanan direktori (Directory Service). Direktori yang dimaksud adalah sekumpulan obyek yang memilki atribut yang secara logika maupun hirarki terorganisasi dengan baik. Direktori ini dapat mendeskripsikan banyak informasi seperti informasi tentang manusia, organisasi, aturan-aturan, layanan dan banyak entitas lainnya. Salah satu contoh dari direktori LDAP adalah sebuah direktori telepon yang berisi nama (orang maupun perusahaan) dikelompokkan secara alpabetis, dimana setiap nama memilki alamat, no telepon dan lain-lain. LDAP dalam melakukan query dan perubahan layanan direktori menggunakan protokol TCP/IP. LDAP menggunakan model client-server, dimana client mengirimkan identifier pada server dan server akan mencoba mencarinya pada DIT (Directory Information Tree) yang tersimpan pada server. Apabila ditemukan maka hasilnya akan dikirimkan ke client tersebut namun apabila tidak ditemukan maka hasilnya berupa pointer ke server lain yang menyimpan data yang di cari.

KONSEP

Dalam mempelajari LDAP, diperlukan pemahaman dari arti direktori dan apa kegunaannya. Direktori pada LDAP dapat berupa personal address book, phone book, yellow pages bahkan web direktori. Direktori dapat membantu pengguna untuk menemukan informasi yang dibutuhkan, sebagai contoh yellow pages. Pada yellow pages dapat dicari mengenai alamat lengkap, nomor telepon, alamat website dan e-mail dari suatu perusahaan hanya dengan mencari berdasarkan nama dari perusahaan yang telah disusun secara alpabetis pada direktori yellow pages. Dalam terminology computer, directory services bisa dikatakan sebagai suatu database tempat penyimpanan data, yang dapat di gunakan untuk memberikan informasi-informasi terkait dengan objeknya. Bagian dari direktori mungkin dapat berisi kumpulan informasi tentang user seperti surname, first name, phone number, User ID, mail address dan lain sebagainya.

Pada server LDAP, suatu directory service akan memilki item yang di jadikan sebagai root. Untuk sebuah titik root, secara umum di tunjukkan dengan suatu attribute dc (Domain Component), o (Organization) atau ou (Organization Unit). Kemudian pada leaf biasanya akan berisi item dengan atribut uid (User ID) ataupun cn (Common Name).

Directory service biasanya menyimpan informasi dalam bentuk struktur tree yang dinamakan Directory Information Tree (DIT). Setiap titik pada DIT diberi suatu alamat, baik secara relative maupun secara absolute. Untuk suatu alamat yang absolute di sebut sebagai DN (Distinguish Name). Sebuah server LDAP terdiri dari 3 komponen yang perlu diketahui sebelum membangun sebuah server LDAP.

  • Schema : Aturan yang mendeskripsikan jenis data apa saja yang akan disimpan, schema sangat membantu dalam menjaga konsistensi dan kualitas data untuk menghindari adanya duplikasi data.
  • ObjectClass : Sekumpulan entry yang menjelaskan tentang sebuah entry grup. ObjectClass membutuhkan atribut – atribut yang akan dapat merepresentasikan entry group tersebut.
  • Attribute : Entri yang bersifat unik seperti uid, cn, sn, ou, o, dc dan sebagainya. Atribut dapat berupa single value atau multi value.

MANFAAT

Seperti yang dijelaskan diatas, dalam mempelajari LDAP, terdapat istilah direktori. Direktori adalah suatu database tempat penyimpanan data, yang dapat digunakan untuk memberikan informasi – informasi yang berkaitan dengan object nya. Sebagai contoh : direktori dapat berupa address book, phone book , dan  yellow pages. Suatu direktori dapat membantu mencari informasi yang dibutuhkan.

Manfaat LDAP dapat dirasakan dengan memperhatikan tiga komponen penting pada DLAP itu sendiri yaitu Schema, Object Class dan Attribute. Dengan demikian penggunaan DLAP akan menjadikan informasi yang dihasilkan ataupun disimpan menjadi konsisten dan terhindar dari duplikasi data.

INTALASI LDAP

Pada bagian ini akan dijelaskan bagaimanakah cara melakukan installasi ldap pada server debian dan apa sajakah package-package yang di perlukan untuk menjalankan ldap dan memastikan bahwa ldap telah berjalan sebagaimana mestinya.

  • #aptitude install slapd

Perintah untuk melakukan instalasi pada suatu package, untuk menginstall package LDAP dapat menggunakan package slapd.

# export http_proxy=http://152.118.25.15:8888

# aptitude install slapd

  • #aptitude install ldap-utils

Perintah yang dilakukan untuk melakukan instalasi terhadap package yang digunakan untuk melakukan testing terhadap ldap. Package tersebut bernama ldap-utils.

# aptutide install ldap-utils

  • #ls /etc/rc2.d

Untuk memastikan apakah slapd telah terinstal dan berjalan dengan baik pada server dapat dilihat dengan melihat pada direktori runlevel apakah slapd ada pada proses yang sedang dijalankan. Karena server berjalan pada runlevel 2, untuk melakukan pengecekan pada direktori /etc/rc2.d.

KONFIGURASI LDAP

Konfigurasi tersebut meliputi proses dan langkah-langkah dalam membuat sebuah Directory Information Tree(DIT) sederhana, lalu akan dijelaskan juga bagaimana menjalankan perintah-perintah yang ada pada package ldap.

  • #slapcat

Slapcat adalah sebuah perintah yang dilakukan oleh super user untuk melakukan pencarian dan juga untuk mengetahui segala hal yang terkait ldap yang ada di file system. Slapcat dioperasikan secara offline. Pada kasus ini, perintah ini dijalankan untuk mengetahui domain yang ada pada server. Dapat dilihat bahwa domain yang telah ada pada server bisa adalah adsis.

  • #nano /etc/ldap/schema/ou.ldif

Buatlah sebuah file ldif pada directory /etc/ldap/schema. File ini akan digunakan nanti ketika proses ldapadd.

Lalu pada file ou.ldif tersebut masukkan konfigurasi seperti berikut ini :

Pada kasus tersebut, akan dibuat 2 buah organization unit yang berada pada domain adsis. Kedua organization unit tersebut bernama People dan Group.

  • #invoke-rc.d slapd stop

Perintah yang digunakan untuk mematikan proses slapd. Proses ini dimatikan sementara untuk melakaukan penambahan ldap.

  • #slapadd –c –v –l /etc/ldap/schema/ou.ldif

Slapadd adalah sebuah perintah yang digunakan untuk menambahkan suatu directory baru untuk ldap pada server.  Opsi –l digunakan untuk melakukan input melalui sebuah file ldif. Masukan direktori file ou.ldif yang sebelumnya telah dibuat.

  • # invoke-rc.d slapd start

Untuk mengaktifkan proses slapd setelah tadi dilakukan pengeditan pada slapd.

  • #slapcat

Untuk memastikan bahwa organizational unit telah terinstal, dapat dilakukan dengan perintah slapcat atau lpadsearch. Disini, digunakan perintah slapcat dan pada slapcat akan tampil 2 organizational unit baru yang sebelumnya tidak ada yaitu ou=people dan ou=group.

  • #nano /etc/ldap/schema/derp.ldif

Buatlah sebuah file ldif yang akan digunakan untuk menambah user baru dan grup baru pada server ldap.

Setelah itu, pada file tersebut masukkan semua konfigurasi terkait user dan grup baru tersebut.

  • #ldapadd –c –x –D cn=admin,dc=adsis –W –f /etc/ldap/schema/derp.ldif

Setelah membuat file derp.ldif, lakukan perintah ldapadd untuk menambahkan user dan grup baru tersebut. Untuk melakukan import dari file ldif bisa menggunakan opsi –f yang ada pada perintah ldapadd.

  • #ldappasswd –x –D cn=admin,cn=adsis –W –S uid=derp,ou=people,dc=adsis

Untuk melakukan perubahaan password dapat dilakukan dengan menggunakan perintah ldappasswd, nanti akan diminta password baru untuk user tersebut.

  • #slapcat

Untuk memastikan apakah user dan grup telah berhasil dibuat, dapat dilakukan perintah slapcat nanti, akan tampil deskripsi mengenai user dan grup baru tersebut.

REFERENSI

Website

[1].    Wiki.debian

[2].    Debian Administrator

[3].    Kokijava

[4].   Arif Rohaman Hakim

[5].    Kelas Jarkom

Artikel

josh.staff.ugm.ac.id/seminar/Modul%20OpenLDAP.pdf

====KA 01====

Raden Agung Yuga Dwitama

Indah Permatasari



Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s