LDAP (Lightweight Directory Access Protocol) adalah protokol perangkat lunak yang membentuk sebuah direktori yang berisi hirarki pohon yang memiliki cabang, mulai dari negara (countries), organisasi, departemen sampai dengan perorangan.
Biasanya digunakan untuk menyimpan resource organisasi, perorangan dan lainnya, seperti file atau printer di dalam jaringan baik di internet atau intranet.
(dikutip dari http://id.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol | 9 Maret 2013).
Sebelumnya saya pernah memposting tutorial instalasi LDAP server di Ubuntu menggunakan ApacheDS di http://www.ardhi.web.id/2012/11/instalasi-ldap-server-dengan-apacheds.html.
Kali ini saya akan share tutorial serupa, instalasi LDAP server namun menggunakan OpenLDAP sehingga tidak perlu tergantung ke ApacheDS. Pada mulanya saya merasa konfigurasi OpenLDAP rada susah dan saya memilih menggunakan ApacheDS yang waktu itu saya anggap lebih mudah, namun ternyata OpenLDAP tidak sulit kok sebenarnya :).
Biasanya digunakan untuk menyimpan resource organisasi, perorangan dan lainnya, seperti file atau printer di dalam jaringan baik di internet atau intranet.
(dikutip dari http://id.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol | 9 Maret 2013).
Sebelumnya saya pernah memposting tutorial instalasi LDAP server di Ubuntu menggunakan ApacheDS di http://www.ardhi.web.id/2012/11/instalasi-ldap-server-dengan-apacheds.html.
Kali ini saya akan share tutorial serupa, instalasi LDAP server namun menggunakan OpenLDAP sehingga tidak perlu tergantung ke ApacheDS. Pada mulanya saya merasa konfigurasi OpenLDAP rada susah dan saya memilih menggunakan ApacheDS yang waktu itu saya anggap lebih mudah, namun ternyata OpenLDAP tidak sulit kok sebenarnya :).
Sebagai informasi saya menggunakan Ubuntu 12.10, cara instalasi dan konfigurasi OpenLDAP server adalah sebagai berikut:
1. Instal paket yang dibutuhkan dengan perintah berikut
1. Instal paket yang dibutuhkan dengan perintah berikut
sudo apt-get install ldap-utils ldapscripts slapd2. Muat semua schema untuk data ldap dengan perintah berikut
ls /etc/ldap/schema/*.ldif | xargs -I {} sudo ldapadd -Y EXTERNAL -H ldapi:/// -f {}
3. Buat file untuk konfigurasi dasar, beri nama misalnya backend.example.com.ldif
File ini nanti akan kita import ke LDAP server, isi file adalah sebagai berikut
File ini nanti akan kita import ke LDAP server, isi file adalah sebagai berikut
# Load dynamic backend modules dn: cn=module,cn=config objectClass: olcModuleList cn: module #olcModulepath: /usr/lib/ldap #olcModuleload: back_hdb # Database settings dn: olcDatabase=hdb,cn=config objectClass: olcDatabaseConfig objectClass: olcHdbConfig olcDatabase: {1}hdb olcSuffix: dc=ardhi,dc=web,dc=id olcDbDirectory: /var/lib/ldap olcRootDN: cn=admin,dc=ardhi,dc=web,dc=id olcRootPW: YOURPASSWORD olcDbConfig: set_cachesize 0 2097152 0 olcDbConfig: set_lk_max_objects 1500 olcDbConfig: set_lk_max_locks 1500 olcDbConfig: set_lk_max_lockers 1500 olcDbIndex: objectClass eq olcLastMod: TRUE olcDbCheckpoint: 512 30 olcAccess: to attrs=userPassword by dn="cn=admin,dc=ardhi,dc=web,dc=id" write by anonymous auth by self write by * none olcAccess: to attrs=shadowLastChange by self write by * read olcAccess: to dn.base="" by * read olcAccess: to * by dn="cn=admin,dc=ardhi,dc=web,dc=id" write by * readKETERANGAN dari konfigurasi di atas adalah sebagai berikut:
--> Modul back_hdb, terdapat pada baris
#olcModulepath: /usr/lib/ldap #olcModuleload: back_hdb
Baris tersebut dicomment karena situasi kondisional, saya sarankan teman-teman mengecek dahulu apakah module back_hdb sudah diload secara otomatis oleh slapd (nama aplikasi OpenLDAP di Ubuntu) dengan perintah
cat /etc/ldap/slapd.d/cn\=config/cn\=module\{0\}.ldifKemudian di output yang muncul cek apakah baris berikut sudah ada
olcModulePath: /usr/lib/ldap olcModuleLoad: {0}back_hdb
Jika sudah ada, biarkan tanda # di depan dua baris konfigurasi di atas. Namun jika belum ada, hilangkan tanda # di depan dua baris konfigurasi di atas untuk memuat modul back_hdb.
--> Admin LDAP (root DN)Konfigurasi yang ditulis dengan
cn=admin,dc=ardhi,dc=web,dc=id
pada konfigurasi di atas adalah root Distinguished Name (DN) untuk root/admin LDAP server saya. Menggunakan cn=admin di hirarki dc=ardhi,dc=web,dc=id.
Misalkan teman-teman ingin menggunakan DN lain bisa diubah sendiri yah.
--> Root PasswordBaris
olcRootPW: YOURPASSWORD
adalah password root LDAP saya, silakan disesuaikan dengan password teman-teman.
4. Instalasi konfigurasi dasar
File backend.example.com.ldif yang sudah ditulis di atas akan diinstall / ditambahkan ke server LDAP dengan perintah berikut
sudo ldapadd -Y EXTERNAL -H ldapi:/// -f ~/Documents/Ubuntu/backend.example.com.ldif
5. Periksa konfigurasi
Pastikan konfigurasi dasar sudah masuk ke LDAP server dengan cara mengecek root DN, gunakan perintah berikut
ldapwhoami -H ldap://localhost -D "cn=admin,dc=ardhi,dc=web,dc=id" -x -w YOURPASSWORD
6. Buat file untuk konfigurasi lanjut yang akan memuat top-level object dalam domain, admin user, dan grup. Simpan konfigurasi misalnya dengan nama frontend.example.com.ldif yang isinya sebagai berikut (penjelasan saya sertakan dalam comment)
# Create top-level object in domain dn: dc=ardhi,dc=web,dc=id objectClass: top objectClass: dcObject objectclass: organization o: Example Organization dc: ardhi #sesuaikan dengan dc=ardhi,dc=web,dc=id, ambil yang pertama description: LDAP Example # Admin user. dn: cn=admin,dc=ardhi,dc=web,dc=id objectClass: simpleSecurityObject objectClass: organizationalRole cn: admin description: LDAP administrator userPassword: YOURPASSWORD # Memasukkan OrganizationalUnit yang bernama people dn: ou=people,dc=ardhi,dc=web,dc=id objectClass: organizationalUnit ou: people # Memasukkan OrganizationalUnit yang bernama groups dn: ou=groups,dc=ardhi,dc=web,dc=id objectClass: organizationalUnit ou: groups # Memasukkan object inetOrgPerson bernama john ke dalam ou=people dn: uid=john,ou=people,dc=ardhi,dc=web,dc=id objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: john sn: Doe givenName: John cn: John Doe displayName: John Doe uidNumber: 1000 gidNumber: 10000 userPassword: password gecos: John Doe loginShell: /bin/bash homeDirectory: /home/john shadowExpire: -1 shadowFlag: 0 shadowWarning: 7 shadowMin: 8 shadowMax: 999999 shadowLastChange: 10877 mail: john.doe@example.com postalCode: 31000 l: Toulouse o: Example mobile: +33 (0)6 xx xx xx xx homePhone: +33 (0)5 xx xx xx xx title: System Administrator postalAddress: initials: JD dn: cn=example,ou=groups,dc=ardhi,dc=web,dc=id objectClass: posixGroup cn: example gidNumber: 10000
7. Instalasi konfigurasi lanjut. Tambahkan file frontend.example.com.ldif yang sudah dibuat tadi ke dalam LDAP server dengan perintah berikut
sudo ldapadd -H ldap://localhost -D "cn=admin,dc=ardhi,dc=web,dc=id" -x -W -f ~/Documents/Ubuntu/frontend.example.com.ldif
Untuk manajemen LDAP server, dapat menggunakan Apache Directory studio yang sudah pernah saya posting di http://www.ardhi.web.id/2012/11/instalasi-apache-directory-studio.html
Demikian tutorial kali ini, jika ada pertanyaan silakan tulis di form komentar ;)
Terima kasih, tetep pakai opensource ya....
sumber:
http://ubuntuforums.org/showthread.php?p=8161118
http://ubuntuforums.org/showthread.php?t=1617412
http://serverfault.com/questions/356912/ldap-add-error-80-olcmoduleload-handler-exited-with-1
https://help.ubuntu.com/10.04/serverguide/openldap-server.html