28
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.

Modul 3 Rev2

Embed Size (px)

DESCRIPTION

Configure Ubuntu Hotspot With Free Radius and Chillispot

Citation preview

Page 1: Modul 3 Rev2

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.

Page 2: Modul 3 Rev2

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.

Page 3: Modul 3 Rev2

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).

Page 4: Modul 3 Rev2

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.

Page 5: Modul 3 Rev2

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

Page 6: Modul 3 Rev2

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

Page 7: Modul 3 Rev2

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

Page 8: Modul 3 Rev2

Gambar 1.8 Konfigurasi IP Forwarding

#nano /etc/sysctl.conf

Gambar 1.9 Konfigurasi NAT Interface Internet

Gambar 1.10 Konfigurasi Apache SSL

Page 9: Modul 3 Rev2

Gambar 1.11 Konfigurasi Webserver

Gambar 1.12 Konfigurasi Webserver

Page 10: Modul 3 Rev2

Gambar 1.13 Konfigurasi Webserver

Gambar 1.14 Pemberian hak akses pada ssl

Konfigurasi Database MySQL

Gambar 1.15 Konfigurasi Database MySQL

Page 11: Modul 3 Rev2

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

Page 12: Modul 3 Rev2

Gambar 1.18 Memulai konfigurasi PHPMyPrepaid dari client

Gambar 1.19 Licence Agreement PHPMyPrepaid

Gambar 1.20 Verifikasi Instalasi PHPMyPrepaid

Page 13: Modul 3 Rev2

Gambar 1.21 Pengaturan Path dan folder konfigurasi PHPMyPrepaid

Gambar 1.22 Konfigurasi Radius Host

Page 14: Modul 3 Rev2

Gambar 1.23 Konfigurasi Interface PHPMyPrepaid

Gambar 1.24 Konfigurasi Database PHPMyPrepaid

Gambar 1.25 Konfigurasi Database PHPMyPrepaid

Page 15: Modul 3 Rev2

Gambar 1.26 Konfigurasi Lokasi

Gambar 1.27 Pengaturan general PHPMyPrepaid

Gambar 1.28 Proses Instalasi PHPMyPrepaid telah selesai

Page 16: Modul 3 Rev2

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

Page 17: Modul 3 Rev2

Gambar 2.3 Setting seperti pada capture

Gambar 2.4 #nano /etc/freeradius/sql.conf

Setting seperti pada capture

Page 18: Modul 3 Rev2

Gambar 2.5 #nano /etc/freeradius/sites-enabled/default

authorize {

sql

noresetcounter

}

Gambar 2.6 Setting seperti pada capture

Page 19: Modul 3 Rev2

acconting {

sql

sql_log

}

Gambar 2.7 Setting seperti pada capture

session{

radutmp

sql

}

Page 20: Modul 3 Rev2

Gambar 2.8 Setting seperti pada capture

post-auth {

sql

sql_log

}

Gambar 2.9 Setting seperti pada capture

Post-Auth-Type REJECT {

Page 21: Modul 3 Rev2

# 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

}

Page 22: Modul 3 Rev2

Gambar 2.12 Sesuaikan seperti capture

Gambar 2.13 Restart Freeradius

Gambar 2.14 Pengujian Freeradius

Page 23: Modul 3 Rev2

3. Konfigurasi Chillispot

Gambar 3.1 Konfigurasi Chilispot

#nano /etc/chili.conf

Uncomment debug

Gambar 3.2 Uncomment pidfile /var/run/chili.pid

Page 24: Modul 3 Rev2

Gambar 3.3 Uncomment net 192.168.182.0/24

Gambar 3.4 Uncomment dns1 192.168.1.1

Page 25: Modul 3 Rev2

Gambar 3.5 Uncomment radiusserver1 127.0.0.1

Gambar 3.6 Uncomment radiussecret 123456789

Page 26: Modul 3 Rev2

Gambar 3.7 Uncomment uamserver https://192.168.1.1/cgi-bin/hotspotlogin.cgi

Gambar 3.8 Uncomment uamsecret root

Page 27: Modul 3 Rev2

Gambar 3.9 Ketikkan perintah yang ada di gambar

Gambar 3.10 Uncomment $uamsecret = “root”;

Gambar 3.11 Uncomment $userpassword=1;

Page 28: Modul 3 Rev2

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