Remote Access (pada sebagian literatur Authentication) Dial-In
User Service, yang sering disingkat menjadi RADIUS, adalah
sebuah protokol keamanan komputer yang digunakan untuk melakukan autentikasi,
otorisasi, dan pendaftaran akun pengguna secara terpusat untuk mengakses
jaringan. RADIUS didefinisikan didalam RFC 2865 dan RFC 2866, yang pada awalnya
digunakan untuk melakukan autentikasi terhadap akses jaringan jarak jauh (remote)
dengan menggunakan koneksi dial-up.
RADIUS kini telah
diimplementasikan untuk melakukan autentikasi terhadap akses jaringan secara
jarak jauh dengan menggunakan koneksi selain dial-up, seperti halnya Virtual
Private Networking (VPN), access point nirkabel,switch Ethernet,
dan perangkat lainnya.
RADIUS mula-mula
dikembangkan oleh perusahan Livingston. Pada awal pengembangannya, RADIUS
menggunakan port 1645, yang ternyata bentrok dengan layanan “datametrics”.
Sekarang, port yang dipakai RADIUS adalah port 1812. Berikut ini adalah RFC (Request
For Comment) yang berhubungan dengan RADIUS:
- RFC 2865 : Remote
Authentication Dial-In User Service (RADIUS)
- RFC 2866 : RADIUS Accounting
- RFC 2867 : RADIUS Accounting
for Tunneling
- RFC 2868 : RADIUS
Authentication for Tunneling
- RFC 2869 : RADIUS Extensions
- RFC 3162 : RADIUS over IP6
- RFC 2548 : Microsoft
Vendor-Specific RADIUS Attributes
Karakteristik
Beberapa karakteristik dari
RADIUS adalah sebagai berikut:
- Berbasis UDP Protocol
- Bisa ditempatkan dimana saja di
internet dan dapat membuat autentikasi (PPP, PAP, CHAP, MS-CHAP, EAP)
antara Network Access Server (NAS) dan server itu sendiri
- RADIUS menggunakan Remote
Access Server (RAS) Secure ID untuk membuat autentikasi yang kuat dalam
pengontrolan akses
Struktur paket data RADIUS
bisa digambarkan sebagai berikut:
Code, memiliki panjang satu oktet dan digunakan untuk
membedakan tipe pesan RADIUS yang dikirimkan pada paket. Kode-kode tersebut
(dalam desimal) antara lain:
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
Identifier, Memiliki panjang satu oktet dan bertujuan untuk
mencocokkan permintaan.
Length, Memiliki panjang dua oktet, memberikan informasi
mengenai panjang paket.
Authenticator, Memiliki panjang 16 oktet, digunakan untuk
membuktikan balasan dari RADIUS server, selain itu digunakan juga untuk
algoritmapassword.
Attributes, Berisikan informasi yang dibawa pesan RADIUS. Setiap
pesan dapat
membawa satu atau lebih atribut. Contoh atribut RADIUS: nama pengguna,password,
CHAP-password, alamat IP access point (AP), pesan
balasan.
Cara Kerja
RADIUS menggunakan konsep
AAA (Authentication, Authorization,Accounting).
Konsep tersebut dapat digambarkan sebagai berikut:
- Access Reject
User ditolak aksesnya ke semua sumberdaya dalam jaringan. Penyebabnya bisa
termasuk kegagalah untuk menyediakan indentifikasi yang tepat atau nama
akun yang salah/tidak aktif
- Access Challenge
Permintaan informasi tambahan dari user, seperti password alteernatif,
PIN, token atau kartu.
- Access Accept
User diberikan akses masuk. Begitu User ter-autentifikasi, server RADIUS
akan sering mengecek agar User hanya menggunakan sumberdaya sesuai dengan
yang diminta. Misalnya User hanya boleh mengakses fasilitas hotspot, dan
tidak untuk menggunakan printer. Informasi tentang User dalam database bisa
disimpan secara lokal dalam server RADIUS atau disimpan dalam tempat
penyimpanan eksternal seperti LDAP atau Active Directory
Proses Authentication
Proses autentikasi diperlukan ketika Anda mempunyai
kebutuhan untuk membatasi siapa saja yang diperbolehkan masuk ke dalam jaringan
remote access milik Anda. Untuk memenuhi kebutuhan tersebut, pengguna yang
ingin mengakses sebuah jaringan secara remote harus diidentifikasi terlebih
dahulu. Pengguna yang ingin masuk ke dalam jaringan pribadi tersebut perlu
diketahui terlebih dahulu sebelum bebas mengakses jaringan tersebut. Pengenalan
ini bertujuan untuk mengetahui apakah pengguna tersebut berhak atau tidak untuk
mengakses jaringan.
Analoginya sederhananya
adalah seperti rumah Anda. Apabila ada orang yang ingin berkunjung ke rumah
Anda, kali pertama yang akan dilakukan oleh pemilik rumahnya adalah
mengidentifikasi siapa yang ingin datang dan masuk ke dalamnya. Jika Anda tidak
mengenal orang tersebut, bisa saja Anda tolak permintaannya untuk masuk ke
rumah Anda. Namun jika sudah dikenal, maka Anda mungkin akan langsung
mempersilakannya masuk. Demikian juga dengan apa yang dilakukan oleh perangkat
remote access
terhadap pengguna yang ingin bergabung ke dalam
jaringan di belakangnya.
Pada umumnya, perangkat
remote access telah dilengkapi dengan sebuah daftar yang berisikan siapa-siapa
saja yang berhak masuk ke jaringan di belakangnya. Metode yang paling umum
digunakan untuk mengenali pengakses jaringan adalah dialog Login dan Password.
Metode ini juga didukung oleh banyak komponen lainnya, seperti metode
challenge
dan
response
,
messaging support
, dan enkripsi, tergantung pada protokol sekuriti apa
yang Anda gunakan.
Proses Authorization
Proses authorization merupakan langkah selanjutnya
setelah proses autentikasi berhasil. Ketika pengguna yang ingin mengakses
jaringan Anda telah dikenali dan termasuk dalam daftar yang diperbolehkan
membuka akses, langkah berikutnya Anda harus memberikan batasan hak-hak apa
saja yang akan diterima oleh pengguna tersebut.
Analogi dari proses ini dapat dimisalkan seperti
peraturan-peraturan yang tertempel di dinding-dinding rumah Anda. Isi dari
peraturan tersebut biasanya akan membatasi para pengunjung agar mereka tidak
dapat dengan bebas berkeliling rumah Anda. Tentu ada bagian yang privasi di
rumah Anda, bukan? Misalnya setiap pengunjung rumah Anda tidak diperbolehkan
masuk ke ruang kerja Anda. Atau setiap pengunjung harus membuka alas kakinya
ketika memasuki ruangan ibadah di rumah Anda. Atau setiap pengunjung hanya
diperbolehkan masuk sampai teras rumah.
Semua itu merupakan
peraturan yang dapat dengan bebas Anda buat di rumah Anda. Begitu juga dengan
apa yang terjadi pada proses pengamanan jaringan
remote access
Anda. Perlu sekali adanya
batasan untuk para pengguna jaringan remote karena Anda tidak akan pernah tahu
siapa yang ingin masuk ke dalam jaringan Anda tersebut, meskipun telah
teridentifikasi dengan benar. Bisa saja orang lain yang tidak berhak
menggunakan
username
dan
password
yang bukan miliknya untuk mendapatkan akses ke
jaringan Anda.
Bagaimana untuk membatasi
masing-masing pengguna tersebut? Banyak sekali metode untuk melakukan
pembatasan ini, namun yang paling umum digunakan adalah dengan menggunakan
seperangkat atribut khusus yang dirangkai-rangkai untuk menghasilkan
policy
tentang hak-hak apa saja
yang dapat dilakukan si pengguna. Atribut-atribut ini kemudian dibandingkan
dengan apa yang dicatat di dalam
database
.
Setelah dibandingkan dengan
informasi yang ada di database, hasilnya akan dikembalikan lagi kepada
fasilitas AAA yang berjalan pada perangkat tersebut. Berdasarkan hasil ini,
perangkat
remote access
akan memberikan apa yang menjadi hak dari si pengguna
tersebut. Apa saja yang bisa dilakukannya dan apa saja yang dilarang sudah
berlaku dalam tahap ini.
Database
yang berfungsi untuk
menampung semua informasi ini dapat dibuat secara lokal di dalam perangkat
remote access
atau router maupun dalam
perangkat khusus yang biasanya disebut dengan istilah server sekuriti. Di dalam
server sekuriti ini biasanya tidak hanya informasi profil penggunanya saja yang
ditampung, protokol sekuriti juga harus berjalan di sini untuk dapat melayani
permintaan informasi profil dari perangkat-perangkat yang berperan sebagai
kliennya. Pada perangkat inilah nantinya
attribute-value
(AV) dari pengguna yang ingin bergabung diterima dan
diproses untuk kemudian dikembalikan lagi menjadi sebuah peraturan oleh
fasilitas AAA tersebut.
Metode authorization
biasanya dilakukan dalam banyak cara. Bisa dilakukan dengan cara
one-time authorization
yang memberikan seluruh hak
dari si pengguna hanya dengan satu kali proses
authorization
. Atau bisa juga dilakukan
per
service authorization
yang membuat pengguna harus
diotorisasi berkali-kali ketika ingin menggunakan layanan tertentu.
Authorization
juga bisa dibuat per
pengguna berdasarkan daftar yang ada di server sekuriti, atau kalau protokolnya
mendukung otorisasi bisa diberlakukan per group pengguna. Selain itu, jika
keamanan server memungkinkan, Anda dapat memberlakukan aturan-aturan otorisasi
berdasarkan sistem pengalamatan
IP
,
IPX
, dan banyak lagi
Proses Accounting
Proses accounting dalam
layanan koneksi remote access amat sangat penting, apalagi jika Anda membuat
jaringan ini untuk kepentingan komersial. Dalam proses accounting ini,
perangkat remote access atau server sekuriti akan mengumpulkan informasi
seputar berapa lama si pengguna sudah terkoneksi, billing time (waktu start dan
waktu stop) yang telah dilaluinya selama pemakaian, sampai berapa besar data
yang sudah dilewatkan dalam transaksi komunikasi tersebut. Data dan informasi
ini akan berguna sekali untuk pengguna maupun administratornya. Biasanya
informasi ini akan digunakan dalam melakukan proses auditing, membuat laporan
pemakaian, penganalisisan karakteristik jaringan, pembuatan billing tagihan,
dan banyak lagi. Fasilitas accounting pada jaringan remote access umumnya juga
memungkinkan Anda untuk melakukan monitoring terhadap layanan apa saja yang
digunakan oleh pengguna. Dengan demikian, fasilitas accounting dapat mengetahui
seberapa besar
resource
jaringan yang Anda gunakan.
Ketika fasilitas AAA diaktifkan pada sebuah perangkat jaringan
remote access
, perangkat tersebut akan
melaporkan setiap transaksi tersebut ke keamanan server. Tergantung pada
protokol sekuriti apa yang Anda gunakan, maka cara melaporkannya pun
berbeda-beda. Setiap
record accounting
akan mempengaruhi
nilai-nilai atribut dari proses AAA yang lain seperti authentication dan
authorization. Semua informasi yang saling terkait ini kemudian disimpan di
dalam
database
server sekuriti atau jika
memang diperlukan, kumpulan informasi ini dapat disimpan di server khusus
tersendiri. Biasanya server khusus
billing
diperlukan jika penggunanya
sudah berjumlah sangat banyak. Berikut ini adalah contoh cara kerja RADIUS:
1.
Sebuah Wireless
Node (WN) / Supplicant dengan alamat IP 192.168.10.30
dan IP yang telah terdaftar dalam pemfilteran MAC ADDRESS meminta akses ke wireless
network atau Access Point (AP).
2.
Access Point (AP) akan menanyakan identitas Supplicant.
Tidak ada trafik data selain Client yang diperbolehkan sebelumSupplicant terautentikasi.
Dalam hal ini, Access point bukanlah sebuah autentikator,
tetapi access point berisi autentikator.
1.
Setelah
nama-pengguna dan password dikirim, proses autentikasi dimulai. Autentikator
mengenkapsulasi kembali pesan ke dalam format RADIUS, dan mengirimnya ke RADIUS
server. Selama proses autentikasi, autentikator hanya menyampaikan paket antara
Supplicant dan RADIUS server. Setelah proses autentikasi selesai, RADIUS server
mengirimkan pesan sukses (atau gagal, apabila proses autentikasinya gagal.)
Apabila proses autentikasi sukses, Supplicant diperbolehkan
untuk mengakses wireless LAN dan/atau internet.
1.
Jika nama Supplicant tidak
terautentifikasi, maka radius server akan mengirim pesan gagal. Dan proses
authentifikasi tidak berjalan atau gagal.
Contoh Implementasi
RADIUS umumnya digunakan
oleh ISP (Internet Service Provider) atau penyedia layanan internet
untuk melakukan Authentication (pembuktian keaslian pengguna), Authorize (mengatur
pemberian hak/otoritas) danAccounting (mencatat penggunaan layanan
yang digunakan).
RADIUS menjalankan sistem
administrasi pengguna yang terpusat. Sistem ini akan mempermudah tugas
administrator. Dapat kita bayangkan berapa banyak jumlah pelanggan yang
dimiliki oleh sebuah ISP, dan ditambah lagi dengan penambahan pelanggan baru
dan penghapusan pelanggan yang sudah tidak berlangganan lagi.
Apabila tidak ada suatu
sistem administrasi yang terpusat, maka akan merepotkan administrator dan tidak
menutup kemungkinan ISP akan merugi atau pendapatannya berkurang.
Dengan sistem ini pengguna
dapat menggunakan hotspot di tempat yang berbeda-beda dengan
melakukan autentikasi ke sebuah RADIUS server.