modul 3 rev2
DESCRIPTION
Configure Ubuntu Hotspot With Free Radius and ChillispotTRANSCRIPT
Network Security
Lab. Modul 3 -- Enhancement : Implementation AAA (FreeRADIUS dan Chillispot)
Topology
Gambar 1. AAA Server Securing the Network
Landasan Teori
Authentication, Authorization, dan Accounting (AAA)
AAA adalah sebuah model akses jaringan yang memisahkan tiga macam fungsi kontrol,
yaitu Authentication, Authorization, dan Accounting, untuk diproses secara independen. Pada
dasarnya terdapat tiga komponen yang membentuk model ini yaitu Remote User, Network
Access Server (NAS), dan AAA server. Proses yang terjadi dalam sistem ini ialah user meminta
hak akses ke suatu jaringan (internet, atau wireless LAN misalnya) kepada Network Access
Server. Network Access Server kemudian mengidentifikasi user tersebut melalui AAA server.
Jika server AAA mengenali user tersebut, maka server AAA akan memberikan informasi kepada
NAS bahwa user tersebut berhak menggunakan jaringan, dan layanan apa saja yang dapat
diakses olehnya. Selanjutnya, dilakukan pencatatan atas beberapa informasi penting mengenai
aktivitas user tersebut, seperti layanan apa saja yang digunakan, berapa besar data (dalam ukuran
bytes) yang diakses oleh user, berapa lama user menggunakan jaringan, dan sebagainya.
Authentication adalah suatu proses dimana user diidentifikasi oleh server AAA sebelum user
menggunakan jaringan. Pada proses ini, user meminta hak akses kepada NAS untuk
menggunakan suatu jaringan. NAS kemudian menanyakan kepada server AAA apakah user yang
bersangkutan berhak untuk menggunakan jaringan atau tidak. Yang dimaksud dengan
Authorization adalah pengalokasian layanan apa saja yang berhak diakses oleh user pada
jaringan. Authorization dilakukan ketika user telah dinyatakan berhak untuk menggunakan
jaringan.
Accounting merupakan proses yang dilakukan oleh NAS dan AAA server yang mencatat semua
aktivitas user dalam jaringan, seperti kapan user mulai menggunakan jaringan, kapan user
mengakhiri koneksinya dengan jaringan, berapa lama user menggunakan jaringan, berapa banyak
data yang diakses user dari jaringan, dan lain sebagainya. Informasi yang diperoleh dari proses
accounting disimpan pada AAA server, dan dapat digunakan untuk berbagai keperluan seperti
billing, auditing, atau manajemen jaringan.
Koneksi antara user dengan NAS dapat melalui jaringan telepon (PSTN / PABX), wireless LAN,
VPN, ISDN, PDSN, VoIP, GPRS, dan lain-lain. Koneksi tersebut, seperti telah disebutkan di
atas, menggunakan bermacam-macam jaringan akses dengan protokol komunikasi yang berbeda-
beda, tergantung device yang digunakan oleh user dan NAS. Koneksi antara NAS dengan server
AAA menggunakan beberapa macam protokol yang terstandarisasi seperti RADIUS, TACACS+,
dan Kerberos.
Free Radius
RADIUS (Remote Access Dial-in User Service) merupakan suatu protokol client-server yang
dikembangkan untuk mekanisme akses kontrol yang memeriksa dan mengautentikasi pengguna
berdasarkan protokol AAA.
FreeRADIUS merupakan salah satu server RADIUS modular berbasis sumber terbuka yang
memiliki banyak fitur dan kemampuan yang tidak kalah dengan RADIUS server komersial.
Salah satu buktinya adalah sudah mendukung beberapa Access Point (AP) / Network Access
Server (NAS) yang umum, dan mendukung berbagai macam sumber data pengguna dari file
teks, LDAP, SQL (MySQL, Oracle, PostgreSQL, MSQL). FreeRADIUS juga dapat berjalan di
berbagai sistem operasi, seperti Linux, FreeBSD, OpenBSD, OSF, Sun Solaris, dan lain
sebagainya. Gambar 1.1 menjelaskan proses permintaan akses dari sebuah client Radius
kepada RADIUS server (Authentication Server) melalui proses AAA pada suatu NAS (Network
Access Server).
Gambar 1.1 Proses request-reply akses user RADIUS
Captive Portal Chillispot
Chillispot merupakan captive portal berbasis sumber terbuka yang difungsikan sebagai
Wireless LAN Access Point Controller. Digunakan untuk mengautentikasi pengguna dari sebuah
jaringan nirkabel. Mendukung sistem login dengan basis web yang merupakan standar untuk
public hotspot. Chillispot bertindak sebagai portal yang akan memaksa pengguna menuju
halaman autentikasi / halaman login pengguna disaat terjadi permintaan akses terhadap suatu
alamat (HTTP Request). Setiap paket data yang melalui captive portal akan ditahan sebelum
pengguna berhasil diautentikasi. Informasi login pengguna kemudian diteruskan kepada
Authentication Server (RADIUS) untuk diperiksa apakah seorang pengguna benar-benar berhak
untuk mengakses hotspot. Jika suatu pengguna berhasil diautentikasi sebagai pengguna yg
berhak, maka paket data akan diteruskan ke pengguna dan penggunaan akan dicatat oleh modul
akuntansi RADIUS.
Kebutuhan sistem
a. Server (1 Buah PC)
Sistem Operasi Linux.
Minimal memiliki 2 network interface.
Jika menggunakan PC Real network interface 1 = Lan, network interface 2 = WLan.
Jika menggunakan PC Virtual network interface 1 = eth0, network interface 2 = eth1.
Telah diinstall freeradius, freeradius-mysql, mysql-server, chillispot, snmp, snmpd,
rrdtool, phpmyadmin, ssl-cert.
b. Client (Minimal 1 Buah PC)
Sistem operasi bisa windows maupun linux.
Sudah terinstal web browser dan putty.
Kebutuhan Sistem
o System Oprasi (Linux kernel 3.8.0-30-generic )
o freeradius
o freeradius-mysql
o mysql-server
o chillispot
o snmp
o snmpd
o rrdtool
o phpmyadmin
o ssl-cert
1. Langkah-langkah Instalasi
Gambar 1.2 instalasi paket Aplikasi
Gambar 1.3 Set password MYSQL dengan user “root”
Gambar 1.4 Set ip address Radius Server
Gambar 1.5 Set interface DHCP
Gambar 1.6 Set Alamat UAM Server
*untuk URL UAM homepage biarkan kosong dan
Password chillispot dan webserver biarkan kosong
Gambar 1.7 Komponen Pendukung WebServer
Gambar 1.8 Konfigurasi IP Forwarding
#nano /etc/sysctl.conf
Gambar 1.9 Konfigurasi NAT Interface Internet
Gambar 1.10 Konfigurasi Apache SSL
Gambar 1.11 Konfigurasi Webserver
Gambar 1.12 Konfigurasi Webserver
Gambar 1.13 Konfigurasi Webserver
Gambar 1.14 Pemberian hak akses pada ssl
Konfigurasi Database MySQL
Gambar 1.15 Konfigurasi Database MySQL
Gambar 1.16 INSERT INTO radcheck (UserName, Attribute, Value) VALUES ('sqltest', 'Password',
'testpwd');
Instalasi PHPmyprepaid
Download paket PHPMyPrepaid di
http://sourceforge.net/projects/phpmyprepaid/files/latest/download
Gambar 1.17 Konfigurasi PHPMyPrepaid
Gambar 1.18 Memulai konfigurasi PHPMyPrepaid dari client
Gambar 1.19 Licence Agreement PHPMyPrepaid
Gambar 1.20 Verifikasi Instalasi PHPMyPrepaid
Gambar 1.21 Pengaturan Path dan folder konfigurasi PHPMyPrepaid
Gambar 1.22 Konfigurasi Radius Host
Gambar 1.23 Konfigurasi Interface PHPMyPrepaid
Gambar 1.24 Konfigurasi Database PHPMyPrepaid
Gambar 1.25 Konfigurasi Database PHPMyPrepaid
Gambar 1.26 Konfigurasi Lokasi
Gambar 1.27 Pengaturan general PHPMyPrepaid
Gambar 1.28 Proses Instalasi PHPMyPrepaid telah selesai
2. Konfigurasi Free Radius, langkah-langkahnya adalah sebagai berikut
Gambar 2.1 Konfigurasi freeradius
# nano /etc/freeradius/radius.conf
Uncomment $INCLUDE sql.conf
Gambar 2.2 Uncomment $INCLUDE sql/mysql/counter.conf
Gambar 2.3 Setting seperti pada capture
Gambar 2.4 #nano /etc/freeradius/sql.conf
Setting seperti pada capture
Gambar 2.5 #nano /etc/freeradius/sites-enabled/default
authorize {
sql
noresetcounter
}
Gambar 2.6 Setting seperti pada capture
acconting {
sql
sql_log
}
Gambar 2.7 Setting seperti pada capture
session{
radutmp
sql
}
Gambar 2.8 Setting seperti pada capture
post-auth {
sql
sql_log
}
Gambar 2.9 Setting seperti pada capture
Post-Auth-Type REJECT {
# log failed authentications in SQL, too.
sql
attr_filter.access_reject
}
Gambar 2.10 Ketikkan perintah yang ada pada capture
Gambar 2.11 Konfigurasi client.conf
#nano /etc/freeradius/client.conf
Client localhost {
ipadd = 127.0.0.1
secret = root
}
Gambar 2.12 Sesuaikan seperti capture
Gambar 2.13 Restart Freeradius
Gambar 2.14 Pengujian Freeradius
3. Konfigurasi Chillispot
Gambar 3.1 Konfigurasi Chilispot
#nano /etc/chili.conf
Uncomment debug
Gambar 3.2 Uncomment pidfile /var/run/chili.pid
Gambar 3.3 Uncomment net 192.168.182.0/24
Gambar 3.4 Uncomment dns1 192.168.1.1
Gambar 3.5 Uncomment radiusserver1 127.0.0.1
Gambar 3.6 Uncomment radiussecret 123456789
Gambar 3.7 Uncomment uamserver https://192.168.1.1/cgi-bin/hotspotlogin.cgi
Gambar 3.8 Uncomment uamsecret root
Gambar 3.9 Ketikkan perintah yang ada di gambar
Gambar 3.10 Uncomment $uamsecret = “root”;
Gambar 3.11 Uncomment $userpassword=1;
Gambar 3.12 chmod 755 hotspotlogin.cgi
Gambar 3.13 Konfigurasi Chilispot
Gambar 3.14 Restart Chillispot
Gambar 3.15 Ketikkan perintah #halt
Tugas Minggu ke 2: Semua setting server konfigurasi tahapan diatas telah selesai dilakukan
Tugas Minggu ke 3: Ujicoba login melalui terminal server dengan menggunakan Radtest, jika proses
radtest gagal, maka ulangi konfigurasi radius.
Tugas Minggu ke 4: Client terhubung dengan jaringan ad-hoc (atau bisa menggunakan switch), dan
membuka browser sehingga akan masuk ke halaman login hotspot.
Coba login dengan menggunakan account yang telah dibuat di PHPMyPrepaid
Pengujian:
Membuat user baru dengan menggunakan PHPMyPrepaid dan akan dilakukan pengujian durasi akses
yang telah disetting pada PHP MyPrepaid