ANALISIS PENGGUNAAN LDAP DAN RADIUS DALAM
SINGLE SIGN ON PADA CENTRAL AUTHENTICATION SERVICE
Skripsi
Diajukan untuk Memenuhi Sebagian SyaratUntuk Memperoleh Gelar
Sarjana Komputer
Disusun oleh
Jeffrey Onggo
0608667
PROGRAM STUDI ILMU KOMPUTER
FAKULTAS PENDIDIKAN MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS PENDIDIKAN INDONESIA
BANDUNG
ANALISIS PENGGUNAAN LDAP DAN RADIUS DALAM
SINGLE SIGN ON PADA CENTRAL AUTHENTICATION SERVICE
Oleh Jeffrey Onggo
Sebuah skripsi yang diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana pada Fakultas Pendidikan Matematika dan Ilmu Pengetahuan Alam
© Jeffrey Onggo 2013 Universitas Pendidikan Indonesia
LEMBAR PENGESAHAN
ANALISIS PENGGUNAAN LDAP DAN RADIUS DALAM
SINGLE SIGN ON PADA CENTRAL AUTHENTICATION SERVICE
Disusun Oleh: Jeffrey Onggo
0608667
Disetujui dan disahkan oleh:
Pembimbing I
Eddy Prasetyo Nugroho, M.T. NIP. 197505152008011014
Pembimbing II
Rizky Rachman J.P, M.Kom. NIP. 197711252006041002
Mengetahui:
Ketua Program Studi Ilmu Komputer Fakultas Pendidikan Matematika dan Komputer
Universitas Pendidikan Indonesia
Rasim, MT.
ABSTRAK
Dewasa ini aplikasi berbasis web telah menjadi hal yang umum, dan setiap aplikasi yang
telah dibangun memerlukan proses otentikasi untuk memvalidasi identitas dari pengguna
yang akan menggunakan layanan pada applikasi tersebut, sehingga meyebabkan pengguna
harus login kembali jika berganti aplikasi, hal menimbulkan terjadinya banyaknya proses
otentikasi. Hal ini dapat dihindari dengan mengintegrasikan sebuah central authentication
service atau CAS agar aplikasi berbasis web yang telah ada dapat di Single Sign On-kan,
sehingga semua proses otentikasi akan ditangani oleh central authentication service dan
proeses otentikasi dapat disederhanakan.
Dangan proses otentikasi pada aplikasi berbasis web ditangani oleh central authentication
service atau CAS, maka CAS harus dapat memberikan otentikasi yang kuat, salah satu
metode yang dapat dilakukan adalah dengan mengunakan Lightweight Directory Access
Protocol (LDAP) sebagai datastore dan Remote Accses Dial In User (RADIUS) sebagai
backend dari central authentication service guna menghasilkan sebuah sistem Single Sign On
(SSO) terintregrasi berbasis CAS ,LDAP dan RADIUS.
Dengan memusatkan data pengguna pada LDAP dan membebankan proses otentikasi pada
RADIUS dan mengintegrasikan keduanya ke dalam CAS telah berhasil membentuk sebuah
sistem SSO yang cukup stabil dan dapat diandalkan dengan tingkat keberhasilan login
sepuluh kali berturut-turut dangan menggunakan data sample acak dari 1000 entry yang ada,
serta berhasil meningkatkan keamanan informasi/data pengguna dengan terenkripsinya data
pengguna melalui protokol RADIUS yang dapat dibuktikan dengan hasil sniffing pada port
1812.
ABSTRACT
Along with The universality of the HTTP protocol seduced developers for quite long time
most applications are web-based today. Many of them requires authentication process to
validate the identity of users who are entitled to use the service. so that causes a user must
log in again if you change the application, it lead to having multiple authentication process.
This can be avoided by integrating a central authentication service or CAS on existing
web-based application so all the authentication process will be handled by a central
authentication service and authentication can be simplified proeses.
With authentication process in web-based applications are handled by a central
authentication service or CAS, the CAS should be able to provide strong authentication, one
of the methods that can be done is by using Lightweight Directory Access Protocol (LDAP)
as the datastore and Accses Remote Dial In User (RADIUS) as the backend of a central
authentication service in order to produce a system of Single Sign On (SSO) based
terintregrasi CAS, LDAP and RADIUS.
By centralizing user data in LDAP and RADIUS authentication process imposes and
integrate them into the CAS has successfully established an SSO system is quite stable and
reliable with a login success rate ten times in a row view using a random sample of data from
the 1000 entry that exist, as well as managed to improve information security / user data with
user data terenkripsinya through RADIUS protocol that can be proven by the results of
sniffing on port 1812.
Keyword : Authentication, Central Authentication Service , LDAP, OpenLDAP, RADIUS,
DAFTAR ISI
KATA PENGANTAR ... ERROR! BOOKMARK NOT DEFINED.
DAFTAR GAMBAR ... III
DAFTAR TABEL ... IV
BAB I ... ERROR! BOOKMARK NOT DEFINED.
PENDAHULUAN... ERROR! BOOKMARK NOT DEFINED.
1.1LATAR BELAKANG ... ERROR!BOOKMARK NOT DEFINED. 1.2RUMUSAN MASALAH ... ERROR!BOOKMARK NOT DEFINED. 1.3BATASAN MASALAH ... ERROR!BOOKMARK NOT DEFINED. 1.4TUJUAN PENELITIAN ... ERROR!BOOKMARK NOT DEFINED. 1.5SISTEMATIKA PENULISAN ... ERROR!BOOKMARK NOT DEFINED. BAB II ... ERROR! BOOKMARK NOT DEFINED.
TINJAUAN PUSTAKA ... ERROR! BOOKMARK NOT DEFINED.
2.1SINGLE SIGN-ON ... ERROR!BOOKMARK NOT DEFINED. 2.1.1 Konsep dan Arsitektur SSO ... Error! Bookmark not defined.
2.2REMOTE ACCESSS DEAL-IN USER (RADIUS) ... ERROR!BOOKMARK NOT DEFINED. 2.2.3 RADIUS Protocol ... Error! Bookmark not defined.
2.2.4 RADIUS Server... Error! Bookmark not defined.
2.2.5 Freeradius ... Error! Bookmark not defined.
2.3LIGHTWEIGTH DIRECTORY ACCESSS PROTOCOL (LDAP) ... ERROR!BOOKMARK NOT DEFINED.
2.3.1Konsep LDAP ... Error! Bookmark not defined.
2.4CAS(CENTRAL ACCESSS SERVER) ... ERROR!BOOKMARK NOT DEFINED.
2.4.1JASIG CAS ... Error! Bookmark not defined.
BAB III ... ERROR! BOOKMARK NOT DEFINED.
METODOLOGI PENELITIAN ... ERROR! BOOKMARK NOT DEFINED.
3.1DESAIN PENELITIAN ... ERROR!BOOKMARK NOT DEFINED. 3.2METODE PENELITIAN ... ERROR!BOOKMARK NOT DEFINED. 3.2.1Metode Pengembangan Sistem ... Error! Bookmark not defined.
3.2.2Identifikasi dan Perumusan Masalah ... Error! Bookmark not defined.
3.3ALAT DAN BAHAN PENELITIAN ... ERROR!BOOKMARK NOT DEFINED.
BAB IV ... ERROR! BOOKMARK NOT DEFINED.
HASIL PENELITIAN DAN PEMBAHASAN ... ERROR! BOOKMARK NOT DEFINED.
4.2.1 Data Flow Diagram Level 1 ... Error! Bookmark not defined.
4.3MEMBANGUN LDAP SERVER ... ERROR!BOOKMARK NOT DEFINED. 4.4MEMBANGUN RADIUSSERVER ... ERROR!BOOKMARK NOT DEFINED. 4.5KONFIGURASI SSL/HTTPS PADA WEB SERVER (DEPENDENCY CAS)ERROR!BOOKMARK NOT DEFINED.
4.6MEMBANGUN CAS ... ERROR!BOOKMARK NOT DEFINED.
4.7ANALISIS DAN PENGUJIAN SISTEM SSO... ERROR!BOOKMARK NOT DEFINED.
BAB V KESIMPULAN DAN SARAN ... ERROR! BOOKMARK NOT DEFINED.
DAFTAR GAMBAR
Gambar 2.1 LDAP dengan X.500 ... Error! Bookmark not defined. Gambar 2.2 LDAP Stand-alone Protokol ... Error! Bookmark not defined. Gambar 2.3 Contoh LDIF ... Error! Bookmark not defined. Gambar 2.4 Directory Information Tree ... Error! Bookmark not defined. Gambar 2.5 Komponen-komponenJASIG CASError! Bookmark not defined. Gambar 3.1 DesainPenelitian ... Error! Bookmark not defined. Gambar 3.2 Sekuensial Linear atau Waterfall . Error! Bookmark not defined. Gambar 4.1 Topologi Jaringan ... Error! Bookmark not defined. Gambar 4.2 Directory Information Tree ... Error! Bookmark not defined. Gambar 4.3 Directory /opt/client ... Error! Bookmark not defined. Gambar 4.4 Output RADIUS server ... Error! Bookmark not defined. Gambar 4.5 Gambar Hasil Login ... Error! Bookmark not defined. Gambar 4.6 Gambar Debug Proses Login-2 ... Error! Bookmark not defined. Gambar 4.7 Accesss Request Package ... Error! Bookmark not defined. Gambar 4.8 Tagging Process ... Error! Bookmark not defined. Gambar 4.9 Binding Process ... Error! Bookmark not defined. Gambar 4.10 Halaman Awal CAS Client ... Error! Bookmark not defined. Gambar 4.11 Login CAS Client ... Error! Bookmark not defined. Gambar 4.12 Failed login ... Error! Bookmark not defined. Gambar 4.13 Protected area 1 ... Error! Bookmark not defined. Gambar 4.14 Public Area ... Error! Bookmark not defined. Gambar 4.15 Protected Area Aplikasi Kedua .... Error! Bookmark not defined. Gambar 4.16 Sampel Hasil Sniffing pada Port 1812 ... Error! Bookmark not defined.
DAFTAR TABEL
BAB I
PENDAHULUAN
1.1Latar Belakang
Dengan semakin berkembangnya protokol HTTP pada saat ini telah membangkitkan
minat para pengembang aplikasi untuk membangun aplikasi mereka berbasis pada
teknologi Web atau biasa disebut Web-based Application. Oleh karena itu
penggunaan aplikasi berbasis Web sudah menjadi suatu yang umum dalam suatu
komunitas, seperti pada perusahaan ataupun lembaga pendidikan. Aplikasi berbasis
Web biasanya selalu menyertakan otentikasi untuk melakukan validasi terhadap
penggunanya sehingga terdapat banyak proses otentikasi yang terjadi.
Salah satu solusi yang biasa menjadi pilihan dalam mengatasi masalah di atas adalah
dengan mengintegrasikan Single Sign On atau disingkat SSO pada jaringan dimana
apliksi-aplikasi itu akan dipergunakan oleh pengguna. SSO adalah sebuah konsep
2
dengan JASIG-CAS, CAS banyak dipilih oleh network adminisitrator karena
merupakan produk open-sources sehingga dapat dikonfigurasikan sesuai dengan
kebutuhan atau dapat disesuaikan dengan kondisi yang sudah ada pada tempat
dimana sistem akan diimplementasikan.
JASIG-CAS yang merupakan Framework SSO secara default tidaklah menyertakan
datastore guna menampung credential/ID pengguna dan hanya menyertakan
simpletext authentication handler yang sudah build-in di dalam JASIG-CAS sebagai
demo saja sehingga network administrator yang membangun sistem SSO dengan
menggunakan JASIG-CAS dapat menentukan sendiri datastore dan jenis
authetication handler yang diinginkan.
Salah satu protokol penyimpanan data atau datastore yang sering digunakan pada
JASIG-CAS adalah Lightweight Directory Accesss Protocol (LDAP) yang
merupakan salah satu alternatif dalam menyimpan credential/ID user selain dari
menggunakan database, LDAP banyak digunakan adalah karena keunggulannya
dalam menjalankan fungsi sebagai datastore karena kecepatannya dalam proses
membaca reading entry-entry yang berada di dalam directory-nya. LDAP cocok
digunakan dalam sistem yang menyimpan data statik atau data yang tidak
dipergunakan dalam proses transaksi seperti data username dan password.
JASIG-CAS sebagai penyedia layanan otentikasi pada sistem SSO telah mendukung
3
Accesss Dial In User (RADIUS) yang merupakan penyedia layanan otentikasi yang
telah banyak didukung oleh berbagai platform aplikasi sehingga mempermudah
proses integrasi sistem yang akan dibangun. Selain itu RADIUS juga dapat
dikombinasikan dengan LDAP dalam melakukan proses otentikasi pengguna agar
dapat meningkatkan keamanan data yang tersimpan dari tindakan hacking seperti
network sniffing yang bertujuan mendapatkan credential pengguna.
Dengan menggunakan LDAP dan RADIUS dalam JASIG-CAS maka sistem SSO
yang utuh dapat diwujudkan sehingga otentikasi aplikasi-aplikasi berbasis Web yang
ada akan ditangani oleh CAS sehingga proses otentikasi akan lebih mudah karena
pengguna hanya perlu mengingat credential/ID-nya yang terdaftar pada CAS.
1.2 Rumusan masalah
Berdasarkan uraian pada subbab di atas, rumusan masalah pada penelitian ini adalah:
1. Bagaimana membangun LDAP datastore guna menampung dan
4
1.3 Batasan masalah
Masalah yang akan dibahas dibatasi pada pembahasan mengenai analisis penggunaan
Lightweight Directory Accesss Protocol (LDAP) bersamaan dengan Remote Accesss
Dial In User (RADIUS) yang diimplemetasikan ke dalam Central Authentication
Service (CAS) dalam mewujudkan layanan SSO.
Batasan pada pengembangan dan analisis sistem ini adalah sebagai berikut ini:
1. Pembuatan datastore pada penelitian ini adalah dengan menggunakan
Lightweight Directory Accesss Protocol (LDAP)
2. Authenticator yang digunakan adalah RADIUS yang telah dikonfigurasi untuk
menggunakan LDAP sebagai datastore-nya.
3. Sistem yang akan dibangun merupakan integrasi dari LDAP, RADIUS dan
JASIG CAS dalam mewujudkan layanan SSO.
4. Peningkatan keamanan sistem melalui penggunaan SSL /HTTPS.
1.4 Tujuan Penelitian
Adapun tujuan penelitian ini adalah melakukan analisis penggunaan LDAP dan
RADIUS dalam SSO pada Central Authentication Service yang dapat menjadi solusi
terhadap masalah yang disebutkan pada rumusan masalah.
1. Membangun LDAP datastore guna menampung dan memusatkan
5
2. Membangun RADIUS server yang dapat melakukan otentikasi dengan
menggunakan credential yang terdapat pada LDAP datastore.
3. Mengintegrasikan LDAP dan RADIUS server sebagai authenticator pada
JASIG CAS dalam memberikan layanan SSO.
4. Menambahkan fitur keamanan pada sistem SSO terhadap serangan
sniffing.
1.5 Sistematika Penulisan
Penulisan skripsi ini tersusun dalam 5 (lima) bab dengan sistematika penulisan
sebagai berikut:
BAB I Pendahuluan
Bab pendahuluan berisi latar belakang masalah, rumusan masalah, tujuan
penyusunan skripsi, metodologi, dan sistematika penyusunan skripsi.
BAB II Dasar Teori
6
BAB IV Implementasi dan Pembahasan
Berisi implementasi dan evaluasi terhadap sistem SSO berbasis LDAP .
BAB V Penutup
Bab penutup berisi kesimpulan dan saran yang berkaitan dengan hasil
BAB III
METODOLOGI PENELITIAN
24
Berikut ini adalah penjabaran dari desain penelitian sebagaimana digambarkan
pada gambar 3.1 di atas:
1. Melakukan persiapan dan perancangan sistem berupa software mau pun
hardware yang diperlukan berserta rancangan topologi jaringan dimana
sistem akan diintegrasikan.
2. Melakukan konfigurasi pada LDAP server berupa IP dan Port serta
pembuatan DIT.
3. Melakukan konfigurasi pada RADIUS server termasuk IP dan Port.
4. Melakukan integrasi LDAP dan RADIUS server agar dapat berfungsi
sebagai satu kesatuan.
5. Melakukan konfigurasi JASIG-CAS sebagai pemberi layanan ticket.
6. Mengintegrasikan LDAP dan RADIUS sebagai authenticator ke dalam
JASIG-CAS agar sistem SSO dapat terwujud.
7. Melakukan pengujian terhadap sistem yang telah dibangun.
8. Melakukan analisis pada hasil pengujian.
9. Membuat kesimpulan atas hasil analisis yang telah dilakukan.
3.2 Metode Penelitian
3.2.1 Metode Pengembangan Sistem
a. Model Proses
Model proses yang digunakan dalam penelitian ini adalah sekuensial
linear atau waterfall. Sekuensial linier mengusulkan sebuah
25
dan sekuensial yang mulai pada tingkat dan kemajuan sistem pada
seluruh analisys, desain, implementasi, dan pengujian. Berikut ini
merupakan tahapan dalam sekuensial linear:
Gambar 3.2 Sekuensial Linear atau Waterfall
(Sumber: Pressman, Roger S. Software Engineering Seventh Edition. 2010:
chapter 2-39)
3.2.2 Identifikasi dan Perumusan Masalah
Dalam sebuah penelitian berangkat dari suatu permasalahan, setelah
masalah diidentifikasi dan dibatasi kemudian permasalahan tersebut
dirumuskan. Perumusan masalah dalam penelitian ini dapat dilihat pada
bagian pendahuluan dalam perumusan masalah.
1. Studi Kepustakaan
26
2. Tahap Analisis Kebutuhan Sistem
Pada tahap ini, dilakukan analisis terhadap penggunaan LDAP
sebagai storage media, RADIUS sebagai penyedia otentikasi dan
CAS sebagai penyedia layanan SSO.
3. Tahap Desain Sistem
Pada tahap desain ini, diterjemahkan kebutuhan-kebutuhan
yang akan dicapai pada tahap analisis ke sebuah bentuk
desain/perancangan sebelum melakukan implementasi yang nyata
terhadap sistem di jaringan. Hal-hal itu meliputi:
a. Perancangan topologi jaringan
b. Rencana peletakan LDAP server dan RADIUS server
dalam topologi jaringan dan tugas-tugasnya dalam
membentuk sistem SSO yang utuh.
4. Tahap Implementasi
Tahap ini adalah tahap untuk mulai membuat dan melakukan
aktifitas dalam penelitian yang sesuai dengan perancangan pada tahap
sebelumnya. Pada tahapan ini dilakukan:
a. Membangun datastore dengan menggunakan Lighweight
Directory Accesss Protokol.
27
c. Mengintegrasikan LDAP, RADIUS dan CAS untuk
mewujudkan layanan SSO.
5. Tahapan Analisis dan pengujian
Pada tahapan ini dilakukan pengujian terhadap hasil
penggunaan LDAP dan RADIUS yang diintergrasikan ke dalam SSO
melalui Central Authentication Service (CAS).
3.3 Alat dan Bahan Penelitian
Pada penelitian ini menggunakan alat penelitian berupa perangkat keras dan
perangkat lunak, yaitu:
1. Perangkat keras
a. Intel(R) Core TM 2 Duo proceSSOr T7200(2.0GHz)
b. RAM 1GB
c. VGA 256 MB
d. Mouse dan keyboard
2. Perangkat Lunak
a. Sistem operasi : Linux Ubuntu 11.04
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan
Berdasarkanan analisis hasil penelitian pada bab sebelumnya, maka dapat ditarik
kesimpulan bahwa:
1. Dengan memanfaatkan LDAP server yang sebagai datastore credential
pengguna telah dapat ditampung dan dipusatkan hal ini dapat dicapai dengan
merancang Directory Information Tree atau DIT sesuai dengan kebutuhan
sistem.
2. Dengan memanfaatkan Freeradius sebagai RADIUS server yang telah
dikonfigurasi dengan menyisipkan sebuah schema bernama
Freeradius.schema kedalam LDAP server sehingga data di dalam LDAP
server dapat dibaca oleh RADIUS server. Serta konfigurasi pada Modul
LDAP pada RADIUS server seperti pada pembahasan di atas sehingga
RADIUS server dapat menggunakan data pada LDAP server dalam
melakukan otentikasi.
3. Dengan membangun CAS-server sesuai dengan configurasi pada RADIUS
server maka CAS-server sebagai pemberi layanan tiket pada sistem Single
Sign On ini dapat menggunakan RADIUS sebagai Authenticator. Hal ini
RADIUS authenticator aDAPter yang didefinisikan pada file Web.xml di
dalam CAS-server.
4. Dengan melakukan konfigurasi Secure Socket Layer atau SSL pada tomcat
Web-server dimana CAS server akan di implemetasikan sehingga data-data
yang dipertukarkan dalam jaringan akan melalui protokol SSL /HTTPS,
walaupun tingkat keamanan yang ditawarkan masih dapat ditembus dengan
berbagai cara salah satu dengan ARP-HTTPS Poisoning yang telah dilakukan
pada pengujian di atas.
5. Pada sistem yang telah dibangun didapat beberapa kelemahan pada sistem ini
antara lain.
a) Credential yang disimpan pada LDAP server harus berupa data static,
hal ini dikarenakan keterbatasan LDAP server dalam melayanin proses
transaksi.
b) Fungsi RADIUS server yang digunakan pada sistem ini hanya fungsi
Authentication dan Authorization.
f) Sistem tidak dapat berjalan dalam jaring yang melakukan filtering
pada port 389,1812,8443.
5.2 Saran
Saran pada penelitian ini adalah antara lain:
1. Perlu diperhatiakan dimana sistem ini akan diimplemetasikan dalam hal
batasan sumberdaya jaringan seperti tersedianya port pada server dan layanan
DNS server yang merupakan salah satu faktor pendukung berfungsinya sistem
ini.
2. Perlu diperhatikanya keamanan dari server-server yang bersangkutan dari sisi
fisik mau logic hal ini dikarenakan sistem ini tidak dapat berjalan jika salah
Daftar pustaka
Butcher matt. 2007. Mastering OpenLDAP Configuring, Securing, and Integrating Directory
Services. Packt Publishing:Birminghem Mumbai.
Dirk van der Walt. 2011.FreeRADIUS Beginner's Guide Manage your network resources
with FreeRADIUS.Packt Publishing:Birminghem Mumbai.
Johner,Heinz; Brown,Larry; Hinner,Franz-Stefan; Reis,Wolfgang; Westman,Jhon.
1998.Understanding LDAP First Edition.
Johner,Heinz; Melot,Michel; Stranden,Harri; Widhiasta, Permana. LDAP Implementation
Cookbook. IBM.
Rybick,Adam. 2010. Implementing CAS.2010 Jasig Conference. San Diego, CA.