Anda di halaman 1dari 8

ANALISIS PERBANDINGAN UNJUK KERJA SISTEM AUTENTIKASI

SINGLE SIGN-ON DENGAN PROTOKOL LDAP DAN RADIUS


Eugenius Tito Valaddo M.1, Adhitya Bhawiyuga, S.Kom.,M.S.2, Eko Sakti P., S.Kom.,M.Kom.3
1,2,3
Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya
Jl.Veteran No.8 Malang, Jawa Timur, Indonesia
valm.tito@gmail.com1, adhitya.bhawiyuga@googlemail.com2, ekosakti@ub.ac.id3

ABSTRAK
Perkembangan teknologi di bidang jaringan komputer berkembang pesat untuk meningkatkan
kenyamanan dan efisiensi dari penggunaan sumber daya bersama melalui internet, dengan aspek penting yang
digunakan yaitu sistem autentikasi. Hal tersebut harus diimbangi dengan keamanan yang baik untuk
meminimalkan resiko serangan, karena data yang terkirim ketika melakukan login merupakan data credential
pengguna. Dengan banyaknya aplikasi jaringan yang ada, dibutuhkan sistem autentikasi yang handal dan aman
serta mampu mengakses beberapa aplikasi jaringan cukup melakukan satu kali autentikasi sehingga lebih efisien.
Single Sign-On yaitu sistem yang mampu mengakses beberapa layanan dalam jaringan menggunakan
satu akun pengguna dengan cara memusatkan proses autentikasi. Penelitian ini membandingkan dua protokol
jaringan yaitu Lightweight Directory Access Protocol (LDAP) dan Remote Authentication Dial-In User Service
(RADIUS). Pada password pengguna dienkripsi menggunakan kriptografi SHA256 dan aplikasi web autentikasi
menggunakan protokol HTTPS.
Hasil pengujian antara LDAP dan RADIUS, perbedaan pemakaian CPU 0,22% dan pemakaian RAM
25,65 kB. Perbedaan Throughput 12,0 req/sec dan Response Time 0,37 sec. Pengujian Stress Load terdapat
perbedaan signifikan yaitu 894,45 milisec. Ketika melakukan sniffing yang didapatkan yaitu nilai hash, karena
nilai asli password sudah dikonversi pada client-side. Ketika melakukan dictionary attack, didapatkan hasil
serangan tidak berhasil karena password disimpan pada database berupa nilai hash 32-bit (SHA256).
Kata kunci: autentikasi, single sign-on, LDAP, RADIUS, protokol.

ABSTRACT
Technological developments in the field of computer networks rapidly growing to improve the comfort
and efficiency use of resources shared via the Internet, with the important aspect that is used is the
authentication system. This must be balanced with good security to minimize the risk of attack, because the sent
data when doing login is the data credential. With many existing network applications, authentication system
needs reliable and secure and be able to access to multiple network applications simply do once the
authentication process so that more efficient.
Single Sign-On is a system that is capable of accessing multiple services in a network using single user
account in centralized authentication process. This study compared two network protocols are Lightweight
Directory Access Protocol (LDAP) and Remote Authentication Dial-In User Service (RADIUS). At the user's
password is encrypted using SHA256 cryptographic and authentication web application using HTTPS protocol.
The test results between LDAP and RADIUS, a difference of CPU usage 0.22% and RAM usage 25.65
kB. Difference of Throughput 12.0 req/sec and Response Time 0.37 sec. Load Stress testing occur significant
difference 894.45 milisec. When doing sniffing obtained hash value, because the value of the original password
has been converted in the client-side. When performing a dictionary attack, showed the attack was unsuccessful
because the password is stored in a database form 32-bit hash value (SHA256).
Keyword: authentication, single sign-on, LDAP, RADIUS, protocol.

1. PENDAHULUAN
1.1 Latar Belakang meminimalkan resiko serangan yang terjadi, karena
data yang terkirim pada saat melakukan proses
Perkembangan teknologi terutama di bidang
autentikasi merupakan data credential pengguna.
jaringan komputer sangat berkembang pesat untuk
Dengan banyaknya aplikasi jaringan yang ada
meningkatkan kenyamanan dan efisiensi dari
sekarang ini dibutuhkan sebuah sistem autentikasi
penggunaan sumberdaya bersama melalui internet,
jaringan yang handal dan aman, dan mampu
dengan salah satu aspek penting yang digunakan
mengakses ke beberapa aplikasi jaringan cukup
yaitu sistem autentikasi jaringan. Hal tersebut harus
melakukan satu kali proses autentikasi sehingga
diimbangi dengan keamanan yang baik untuk
lebih efektif dan efisien.

1
Single Sign-On merupakan teknologi yang Sistem SSO memiliki beberapa keuntungan,
mampu mengakses beberapa layanan dalam antara lain sebagai berikut:
jaringan cukup menggunakan satu akun pengguna
a. Pengguna bisa berpindah ke aplikasi lain tanpa
dengan cara memusatkan proses autentikasi. Sistem
perlu login lagi.
ini sudah sukses diimplementasikan secara luas
b. Tidak perlu mengingat atau membuat banyak
oleh perusahaan internasional Google, yang
akun yang sama di tiap aplikasi yang berbeda.
memiliki banyak aplikasi berbasis web seperti
c. Menghemat waktu karena hanya
GMail, Youtube, GDrive, dan yang lain. Pengguna
membutuhkan satu kali proses autentikasi.
cukup melakukan satu kali login dan otomatis
d. Menghemat biaya untuk pemeliharaan
mendapatkan hak akses ke semua aplikasi web
password secara signifikan.
milik Google tersebut.
e. Memungkinkan kontrol dan pengelolaan
Pada penelitian ini akan dirancang sistem sumber daya yang lebih baik.
autentikasi Single Sign-On dengan melakukan
2.2 Lightweight Directory Access Protocol
analisis dari dua protokol LDAP dan RADIUS,
pada sisi kinerja dan proses autentikasi yang LDAP adalah sebuah protokol kelas ringan
berjalan di dalamnya. Untuk mendukung dari sisi untuk mengakses protokol X.500 Directory Service
keamanan, akan dirancang satu aplikasi web khusus dan berjalan melalui protokol TCP/IP. Protokol
untuk proses autentikasi yang menggunakan LDAP membentuk sebuah direktori berisi hierarki
protokol HTTPS dan konversi password menjadi pohon yang memiliki cabang, disebut sebagai
algoritma hash SHA256 pada client-side. Directory Information Tree (DIT).
1.2 Rumusan Masalah
Berdasarkan pada latar belakang tersebut,
terdapat beberapa rumusan masalah dalam
penelitian ini, antara lain:
a. Bagaimana merancang sistem autentikasi
Single Sign-On menggunakan protokol LDAP
dan RADIUS yang aman?
b. Bagaimana kinerja dari protokol LDAP dan
RADIUS? Gambar 2.2 Struktur Directory Information Tree
Informasi pada LDAP disimpan dalam suatu
2. LANDASAN PUSTAKA data yang memiliki beberapa atribut. Jika pada
2.1 Single Sign-On relational database memiliki primary key untuk
membedakan antar data, maka pada LDAP
Single Sign-On merupakan teknologi yang memiliki Distinguished Name (DN) yang bernilai
mampu untuk mengakses beberapa layanan dalam unik untuk tiap data. DN didapat dengan
jaringan hanya menggunakan satu akun pengguna mengurutkan lokasi data dari root DIT sampai
saja dengan cara memusatkan proses autentikasi. directory data tersebut.
Pengguna hanya melakukan satu kali proses
autentikasi untuk mendapatkan izin akses terhadap
semua layanan aplikasi meskipun berpindah
aplikasi lain, dengan ketentuan aplikasi yang
bersangkutan sudah terhubung dengan sistem SSO.

Gambar 2.3 Proses autentikasi pada LDAP


LDAP mengakses Directory Service yang
merupakan perangkat lunak yang menyimpan,
mengorganisir dan menyediakan akses ke informasi
dalam sebuah direktori. Terdapat perbedaan
Directory Service dengan Relational Database,
yaitu penggunaan DS lebih ke proses pembacaan
data daripada penulisan data. Karena DS lebih
sederhana hanya menyimpan data username,
password, dan beberapa data penting saja, serta
tidak mendukung proses transaksi rumit yang
Gambar 2.1 Proses SSO secara umum biasanya ditemukan pada Relational Database
seperti MySQL.

2
2.3 Remote Authentication Dial In User Service c. Length, memberikan informasi mengenai
panjang paket data, memiliki ukuran dua octet.
RADIUS merupakan sebuah protokol access-
d. Authenticator, untuk membuktikan balasan
control yang melakukan verifikasi dan otentikasi
dari RADIUS Server dan digunakan untuk
pengguna berdasarkan pada metode challenge /
algoritma password, memiliki ukuran 16 octet.
response, termasuk di mana autentikasi terpusat,
e. Attributes, berisi informasi yang dibawa pesan
pengatur otorisasi, dan rincian accounting
RADIUS, setiap pesan dapat membawa satu
pengguna yang diperlukan. Awalnya dikembangkan
atau lebih atribut. Contoh: nama pengguna,
Livingston Enterprises pertengahan tahun 1990,
password, CHAP-password, alamat IP Access
kemudian dibeli Lucent Technology.
Point (AP), atau pesan balasan.
RADIUS memiliki fungsi utama yaitu
melakukan autentikasi pengguna sebelum 3. METODOLOGI
mengakses ke jaringan, memberikan otorisasi
3.1 Tipe Penelitian
pengguna untuk beberapa layanan jaringan tertentu,
dan mencatat pemakaian penggunaan layanan Penelitian ini menggunakan tipe implementatif
pengguna tersebut. perancangan karena merupakan kegiatan penelitian
dengan melakukan implementasi protokol LDAP
AAA singkatan Authentication, Authorization,
dan RADIUS, serta merancang prototype aplikasi
and Accounting, yang mendefinisikan sebuah
web autentikasi Accounts untuk membuat simulasi
arsitektur yang melakukan autentikasi dan
proses sistem Single Sign-On.
memberikan otorisasi dan mencatat aktivitas
pengguna. Namun bisa hanya menggunakan 3.2 Studi Literatur
sebagian dari sistem AAA tersebut, seperti hanya
melakukan autentikasi dan otorisasi pengguna Studi literatur dilakukan untuk mempelajari
mengenai dasar teori yang digunakan sebagai
namun mengabaikan aktivitas pengguna tersebut
panduan penunjang penelitian ini, diperoleh dari
atau tanpa accounting, ataupun sebaliknya.
materi yang bersifat resmi seperti jurnal, e-book,
forum, dan penelitian sebelumnya. Referensi yang
diperlukan untuk menunjang penelitian ini yaitu
teori mengenai pengertian umum, dasar sistem,
serta cara kerja dari Single Sign-On, LDAP, dan
RADIUS secara keseluruhan.
3.3 Perancangan Sistem
Proses perancangan sistem pada penelitian ini
akan menjelaskan tentang alur kerja dari sistem
autentikasi terpusat Single Sign-On. Secara umum
sistem SSO memusatkan proses autentikasi dalam
satu server, bukan pada masing-masing aplikasi.
Karena itu server autentikasi harus dilakukan
instalasi dan konfigurasi hingga server tersebut
bekerja dengan baik dan lancar. Setelah itu penulis
menyiapkan minimal dua aplikasi web sebagai
objek sistem SSO tersebut dan dikonfigurasi supaya
terkoneksi dengan sistem SSO.
Gambar 2.4 Proses autentikasi pada RADIUS
Paket data yang dikirim melalui protokol
RADIUS dienkapsulasi, yang terdiri dari 5 bagian
penting, antara lain:
a. Code, digunakan untuk membedakan tipe
pesan RADIUS yang dikirimkan pada paket
dan memiliki ukuran satu octet, yaitu: (1)
Access-Request, (2) Access-Accept, (3)
Access-Reject, (4) Accounting-Request, (5)
Accounting-Response, (11) Access-Challenge,
(12) Status-Server, (13) Status-Client, (255)
Reserved.
b. Identifier, untuk melakukan identifikasi
permintaan dan memiliki ukuran satu octet.
Jika permintaan cocok maka akan terjadi
Access Request. Gambar 3.1 Rancangan SSO yang dibangun

3
3.4 Peralatan Pendukung 3.6 Pengujian dan Analisis
Untuk mendukung proses implementasi dan Setelah server dan client siap digunakan,
pengujian penelitian ini, dibutuhkan peralatan dilakukan pengujian awal untuk melakukan
pendukung seperti perangkat keras dan perangkat autentikasi melalui aplikasi web autentikasi yang
lunak yang digunakan. Sistem ini dirancang sebagai sudah dirancang. Jika berhasil login maka akan
simulasi autentikasi yang bekerja menggunakan mendapatkan session baru dan bisa mengakses web
satu server yang dipasang pada laptop penulis dan Rakit dan Sikapen secara bersamaan, jika gagal
satu komputer client milik laboratorium, kemudian login maka akan muncul peringatan dan harus
dihubungkan menggunakan koneksi kabel LAN. kembali ke halaman login. Ketika logout akan
Berikut ini peralatan pendukung yang digunakan: menghapus semua session pada aplikasi web.
 Server Kemudian dilakukan pengujian dari dua sisi
 OS : Linux Ubuntu 14.04 LTS yaitu kinerja dan keamanan. Pada sisi kinerja
 CPU : Intel Atom N2800 @ 1,8 GHz menggunakan beberapa parameter yang akan
 RAM : 2048 MB diukur yaitu pemakaian CPU, pemakaian RAM,
 Network : Realtek Gigabit Ethernet Throughput, Response Time, dan Stress Load. Pada
 Application: sisi keamanan akan dilakukan serangan pasif
 Aplikasi web minimal dua, rancangan (sniffing) dan serangan aktif (dictionary attack).
penulis yaitu Rakit dan Sikapen. Sesudah itu akan didapatkan hasil dari pengujian
 Aplikasi web khusus autentikasi, rancangan tersebut dan dianalisis perbandingan dari kinerja
penulis yaitu Accounts. pemakaian server, aplikasi web, dan protokol yang
 LAMP sebagai web server. digunakan pada implementasi LDAP dan RADIUS.
 LDAP dan RADIUS sebagai protokol
autentikasi. 4. PERANCANGAN
 Sublime, Chrome, Terminal (pendukung).
4.1 Rancangan Sistem LDAP dan RADIUS
 Client
 OS : Linux Kali 2.0 Sistem autentikasi terpusat Single Sign-On
 CPU : Intel Core i3 CPU550 @ 3,2 GHz harus dilakukan perancangan terlebih dahulu untuk
 RAM : 2048 MB memudahkan pada saat tahap implementasi sistem,
 Network : Realtek Gigabit Ethernet dilakukan perancangan menggunakan protokol
 Application: LDAP dan RADIUS yang dikombinasikan dengan
 JMeter, menguji kinerja aplikasi web. aplikasi web sebagai objek sistem.
 Wireshark, sniffing data saat autentikasi.
 Burp Suite, melakukan penetration testing.
 Aplikasi Python rancangan penulis untuk
menguji kinerja protokol.
 Chrome atau Firefox, menjalankan web.
3.5 Implementasi Sistem
Pada tahap implementasi sistem SSO, server
menggunakan Linux Ubuntu dan client
menggunakan Kali Linux, kemudian melakukan
instalasi perangkat lunak yang dibutuhkan. Setelah
itu server dan client dihubungkan dalam satu
jaringan menggunakan kabel LAN. Semua aplikasi
di server dipastikan sudah berjalan dengan lancar.
Aplikasi web diakses dari client dengan mengetik
IP Address server pada browser. Protokol LDAP
dan RADIUS dijalankan secara independen untuk
melakukan analisis perbandingan kinerja dari
masing-masing protokol pada sistem SSO.
Gambar 4.1 Diagram alir sistem SSO
Pada password akun pengguna menggunakan
kriptografi Secure Hash Algorithm 256 di mana 4.2 Konfigurasi Aplikasi Web Accounts
algoritma hash merupakan kriptografi satu arah Pada simulasi ini, penulis menggunakan dua
yang tidak bisa didapatkan kembali nilai aslinya aplikasi web yaitu Rakit dan Sikapen. Karena
dengan sifatnya collision resistance, dan pada sistem SSO memusatkan proses autentikasi, maka
aplikasi web autentikasi menggunakan protokol harus dibangun aplikasi web baru khusus untuk
HTTPS. Diharapkan penggunaan kriptografi autentikasi yang berfungsi sebagai penghubung
SHA256 dan protokol HTTPS dapat meningkatkan antara aplikasi web Rakit Sikapen dengan protokol
sisi keamanan pada sistem autentikasi SSO. LDAP RADIUS, dengan nama “Accounts”.

4
Tabel 4.1 Potongan code index.php Accounts radius_create_request($radius,
RADIUS_ACCESS_REQUEST);
<html><head> radius_put_attr($radius, RADIUS_USER_NAME,
<script src="sha256.js"></script> $userrad);
<script> $chall = mt_rand();
function mySubmit(aForm){ $chapval = pack('H*', md5(pack('Ca*',1 ,
var inputPass = aForm["pass"]; $passrad . $chall)));
inputPass.value = CryptoJS.SHA256 $passchap = pack('C', 1) . $chapval;
(inputPass.value); radius_put_attr($radius,
return true; } RADIUS_CHAP_PASSWORD, $passchap);
</script> radius_put_attr($radius,
</head><body> RADIUS_CHAP_CHALLENGE, $chall);
<?php $result = radius_send_request($radius);
if(isset($_SESSION......)){ switch ($result){
include "applist.php"; case RADIUS_ACCESS_ACCEPT:
}else{ $_SESSION......
?> include "applist.php";
<form action="result.php" method="post" break;
onsubmit="return mySubmit(this);"> case RADIUS_ACCESS_REJECT:
<input type="text" name="user" required> echo "Incorrect username password";
<input type="password" name="pass" break;
required><br> default:
<input type="submit" value="LOGIN"> echo "Can't connect RADIUS Server";
</form> break;
<?php }
} ?> radius_close($radius);
</body></html> ?>

Penelitian ini menggunakan dua protokol


server yang berjalan secara independen, maka 5. IMPLEMENTASI
terdapat dua versi aplikasi web Accounts yaitu 5.1 Persiapan Instalasi dan Konfigurasi Server
“accounts-ldap” dan “accounts-rad”. Ketika
pengguna klik Login akan menjalankan fungsi Untuk memulai penelitian ini, perlu disiapkan
konversi hash pada password, setelah itu server yang menggunakan Ubuntu 14.04 LTS dan
menjalankan file script result.php dan dikirim client dengan Kali 2.0 dengan masing-masing
menuju server untuk dilakukan pengecekan data memiliki keuntungan yaitu Ubuntu banyak
credential di sisi server. Proses tersebut merupakan didukung tutorial dan aplikasi mengenai instalasi
konversi pada sisi client. Untuk mendukung hal server yang tersebar di internet, sedangkan Kali
tersebut, unduh library CryptoJS. memiliki banyak aplikasi untuk berbagai macam
pengujian yang dibutuhkan.
Tabel 4.2 Potongan code result.php Accounts-ldap
Setelah itu server dan client dihubungkan
<?php dengan kabel LAN tipe cross karena langsung
$userldap = $_POST[userldap];
$passldap = $_POST[passldap]; menghubungkan dua komputer tanpa perangkat
$ip = "192.168.1.1"; jaringan perantara. Lakukan konfigurasi IP Address
$port = 389; dalam satu network, kemudian tes ping untuk
$ldap = ldap_connect($ip, $port); mengecek komunikasi data apakah sudah lancar.
ldap_set_option($ldap,
LDAP_OPT_PROTOCOL_VERSION, 3); Penulis menggunakan IP Server 192.168.1.1 dan IP
if($ldap){ Client 192.168.1.2.
$bind = ldap_bind ($ldap,
"cn=$userldap,ou=users,dc=vm,dc=com", Sebelum melakukan instalasi, hubungkan
$passldap); server ke internet karena Linux harus menjalankan
if($bind){ perintah instalasi yang membutuhkan koneksi
$_SESSION......
include "applist.php"; internet. Sesudah itu, lakukan instalasi serta
} konfigurasi aplikasi LAMP sebagai web server,
else echo "Incorrect username password."; LDAP sebagai protokol autentikasi pertama, dan
}
else echo "Can't connect LDAP Server.";
RADIUS sebagai protokol autentikasi kedua.
ldap_close($ldap); 5.2 Pengisian Data Pengguna Baru
?>
Setelah melakukan instalasi dan konfigurasi
Tabel 4.3 Potongan code result.php Accounts-rad
protokol server, saatnya memasuki tahap pengisian
<?php data pengguna baru yang akan digunakan untuk
$userrad = $_POST[userrad]; proses autentikasi pada aplikasi web. Untuk
$passrad = $_POST[passrad];
$ip = "192.168.1.1"; password pengguna menggunakan hash 32-bit yang
$port = 1812; lebih aman daripada enkripsi. Karena itu, pengisian
$secret = "rad2307"; password pada database server berupa nilai
$radius = radius_auth_open();
radius_add_server($radius, $ip, $port,
SHA256, bukan plain-text. Namun untuk username
$secret, 5, 3); tetap menggunakan plain-text.

5
6. PENGUJIAN
6.1 Pengujian Awal Autentikasi
Pengujian awal diperlukan untuk melakukan
percobaan apakah sistem yang dirancang sudah
diterapkan dengan baik dan apakah berjalan dengan
lancar. Setelah melakukan konfigurasi aplikasi web
Accounts pada masing-masing LDAP dan
RADIUS, penulis sudah menyiapkan aplikasi web
Rakit dan Sikapen yang sudah ada sebelumnya.
Proses autentikasi yang terjadi secara umum
memang sama, namun berbeda pada tiap fungsi Gambar 6.3 Tampilan Accounts ketika sukses login
yang digunakan antara LDAP dan RADIUS.
6.2 Pengujian Kinerja
Tabel 6.1 Perbedaan fungsi autentikasi
Pada tahap pengujian kinerja, menggunakan
Fungsi LDAP Fungsi RADIUS aplikasi Apache JMeter untuk mengukur parameter
$_POST["userldap"] => $_POST["userrad"] => pada LDAP dan RADIUS yaitu Throughput dan
plain-text plain-text Response Time. Skenario pengujian memberikan
$_POST["passldap"] => $_POST["passrad"] => beban proses autentikasi pada aplikasi web yang
SHA256 SHA256 dilakukan sebanyak empat kali pengujian.
ldap_connect => IP, port radius_auth_open => IP,
port, secretkey Pengujian kinerja berikutnya, menggunakan
distinguished_name => radius_put_attr => user, perintah “iostat” dan “vmstat” yang dijalankan pada
user, pass CHAP-pass Terminal untuk mengukur parameter pemakaian
ldap_bind => auth radius_sent_request => CPU dan pemakaian RAM pada komputer server.
auth
ldap_bind_success => radius_access_accept => Pengujian kinerja berikutnya, menggunakan
response response aplikasi bahasa Python untuk mengukur parameter
session_start => login session_start => login Stress Load dengan multithreading. Penulis
ldap_bind_failed => radius_access_reject => membangun sendiri program tester menggunakan
response response Python karena mendukung threading yang
ldap_close => not login radius_close => not login langsung menguji server tanpa perantara. Skenario
Berikut ini beberapa tampilan dari aplikasi pengujian ini memberikan beban 50 req/sec pada
autentikasi web “Accounts” yang dilakukan dengan masing-masing protokol yang dilakukan empat kali
berbagai skenario pengujian, yaitu: pengujian. Program tester ini dijalankan melalui
command line “python filename.py result.csv”
dengan filename.py diganti dengan nama file dan
hasil keluaran tersimpan dengan format csv untuk
memudahkan analisis hasil pengujian.
Tabel 6.2 Stress Load pada LDAP
import ldap
import time
import datetime
import hashlib
import threading
import csv
import sys
def auth(u):
row = reader.next()
Gambar 6.1 Tampilan awal aplikasi Accounts uname = row[0]
passwd = "titovm"
for i in range(50):
start =
datetime.datetime.now()
l = ldap.open
("127.0.0.1",389)
l.protocol_version =
ldap.VERSION3
h = hashlib.sha256()
h.update(passwd)
passhash = h.hexdigest()
l.simple_bind (uname,passhash)
end = datetime.datetime.now()
delta = end - start
sec = (str(delta))[-9:]
print (u),uname,(i),"-",sec
Gambar 6.2 Tampilan Accounts ketika gagal login writer.writerow

6
(((u),uname,(i),sec))
time.sleep(0.02)
o = open('user.csv','rb')
reader = csv.reader(o)
f = open(sys.argv[1],'wt')
writer = csv.writer(f)
writer.writerow(('Loop','User','Thread','Time'
))
for u in range(400):
t = threading.Thread
(target=auth,args=(u,))
t.start()
Gambar 6.5 Pemakaian RAM pada server
Tabel 6.3 Stress Load pada RADIUS
from radius import RADIUS
import time
import datetime
import hashlib
import threading
import csv
import sys
def auth(u):
row = reader.next()
uname = row[0]
passwd = "titovm"
for i in range(50):
start =
Gambar 6.6 Throughput pada aplikasi web
datetime.datetime.now()
r = RADIUS
("rad2307","127.0.0.1",1812)
h = hashlib.sha256()
h.update(passwd)
passhash = h.hexdigest()
r.authenticate
(uname,passhash)
end = datetime.datetime.now()
delta = end - start
sec = (str(delta))[-9:]
print (u),uname,(i),"-",sec
writer.writerow
(((u),uname,(i),sec))
Gambar 6.7 Response Time pada aplikasi web
time.sleep(0.02)
o = open('user.csv','rb')
reader = csv.reader(o)
f = open(sys.argv[1],'wt')
writer = csv.writer(f)
writer.writerow(('Loop','User','Thread','Time'
))
for u in range(400):
t = threading.Thread
(target=auth,args=(u,))
t.start()

Berikut ini merupakan hasil pengujian kinerja Gambar 6.8 Stress Load pada protokol server
dalam bentuk grafik dengan parameter antara lain
pengujian server (pemakaian CPU dan RAM), 6.3 Pengujian Keamanan
pengujian aplikasi web (Throughput dan Response Pada tahap pengujian keamanan, melakukan
Time), dan pengujian protokol (Stress Load). sniffing (serangan pasif) atau menangkap data saat
proses autentikasi berlangsung pada masing-masing
server menggunakan aplikasi Wireshark. Sesudah
melakukan sniffing, kemudian dilakukan filtering
terhadap data credential pengguna.
Pengujian keamanan berikutnya, melakukan
uji coba dictionary attack (serangan aktif) pada
masing-masing server menggunakan aplikasi Burp
Suite. Pengujian ini menggunakan daftar kata untuk
dimasukkan pada kolom username dan password di
Gambar 6.4 Pemakaian CPU pada server halaman login.
Berikut ini merupakan hasil pengujian
keamanan dalam bentuk screenshot dengan
parameter data sniffing dan dictionary attack.

7
7.2 Saran
Saran yang dapat penulis sampaikan untuk
penelitian yang lebih lanjut, yaitu:
a. Melakukan kombinasi implementasi
protokol LDAP dengan RADIUS sehingga
dapat meningkatkan keuntungan.
b. Implementasi protokol yang lain, misalnya
protokol Kerberos yang berbasis ticket atau
Gambar 6.9 Sniffing ketika login pada aplikasi web protokol Diameter yang merupakan penerus
RADIUS.
c. Dapat menambahkan parameter pengujian
atau menggunakan algoritma kriptografi
yang lain.

DAFTAR PUSTAKA
Amarudin, Widyawan, 2014. Analisa Keamanan Jaringan
Single Sign-On Dengan LDAP Menggunakan
Metode MITMA. Indonesia
Yuliansyah, H., 2011. Optimalisasi RADIUS Server
sebagai Sistem Otentikasi dan Otorisasi untuk
Proses Login Multi Aplikasi Web. Indonesia
Gambar 6.10 Dictionary attack pada aplikasi web
Patil, A., Pandit, R., Patel, S., 2013. Analysis of Single
Sign On for Multiple Web Applications. India
7. PENUTUP Machado, B., Nascimento, A.,Tonicelli, R., 2010.
Framework for Secure Single Sign-On. Brazil
7.1 Kesimpulan
Ade, D., Suadi, W., 2009. Implementasi Teknologi Single
Dari hasil dan analisis penelitian sistem Sign-On di Lingkungan Teknik Informatika ITS.
autentikasi Single Sign-On, disimpulkan bahwa: Indonesia
Hilmi, F., Rumani, R., Irawan, B., 2012. Analisis
a. Sistem autentikasi terpusat Single Sign-On Performansi Autentikasi Single Sign-On pada
berhasil dilakukan implementasi menggunakan Web Menggunakan LDAP. Indonesia
protokol LDAP dan RADIUS, dengan Obimbo, C., Ferriman, B., 2011. Vulnerabilities of LDAP
dukungan aplikasi web autentikasi as an Authentication Service. Canada
menggunakan protokol HTTPS dan enkripsi Wang, X., Schulzrinne, H., Kandlur, D., Verma, D.,
2008. Measurement and Analysis of LDAP
password pengguna menggunakan kriptografi
Performance. IEEE. USA
hash 32-bit SHA256. Huntington, G., 2006. 101 Things to Know About Single
b. Penggunaan HTTPS dan SHA256 berhasil Sign On. USA
meningkatkan keamanan sehingga sulit Wang, R., Chen, S., Feng, X., 2012. Traffic-Guided
Security Study of Commercially Deployed Single
mendapatkan data credential pengguna. Sign-On Web Services. USA
c. Hasil kinerja protokol LDAP dan RADIUS: Findlay, A., 2011. Best Practices in LDAP Security. UK
Yanuar, M.,Iman, K., Fatchur, A., 2012. Implementasi
 Hasil pengujian dari pemakaian CPU, Single Sign-On Berbasis Central Authentication
pemakaian RAM, Throughput, dan Response Service Protocol Pada Jaringan Berbasis LDAP.
Time hanya terdapat sedikit perbedaan. Indonesia
Rudy, Riechie, Gunadi, O., 2007. Integrasi Aplikasi
 Hasil pengujian Stress Load terdapat Menggunakan Single Sign-On Berbasis
perbedaan signifikan yaitu setara dengan Lightweight Directory Access Protocol Dalam
kinerja pembacaan LDAP empat kali lebih Portal Binus. Indonesia
cepat daripada RADIUS. Internet Engineering Task Force, 2014. The
FreeRADIUS Technical Guide - How RADIUS
 LDAP merupakan protokol ringan yang Works. USA
memiliki database sendiri yaitu Directory Dekok, A., The FreeRADIUS Project.
Information Tree (DIT) dengan struktur pohon <http://freeradius.org> [diakses Juli 2015]
sehingga kinerja pembacaan menjadi sangat Netscape Communications, Hypertext Transfer Protocol
cepat. Secure. <https://en.wikipedia.org/wiki/HTTPS>
[diakses Juli 2015]
 RADIUS merupakan protokol AAA yang National Security Agency, Secure Hash Algorithm.
menggunakan database MySQL dengan fitur <https://en.wikipedia.org/
kompleks sehingga mempengaruhi kinerja wiki/Secure_Hash_Algorithm> [diakses Juli
pembacaan, serta terdapat tambahan secret key 2015]
dan metode CHAP-Password.

Anda mungkin juga menyukai