Click here to load reader

Modul 3 Rev2

  • View
    26

  • Download
    1

Embed Size (px)

DESCRIPTION

Configure Ubuntu Hotspot With Free Radius and Chillispot

Text of 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.

  • 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