Senin, 21 Januari 2013

Tutorial Chillispot dan Freeradius (Ubuntu 12.04)

Instal Ubuntu 12.04 di Komputer
Paket yang perlu diinstal dalam komputer yaitu:

·            Freeradius dan freeradius-mysql
·            Chillispot
·            Apache2
·            Php5
·            Mysql-server
·            Gunzip
·         Snmp
·         Snmpd
·         Rrdtool
·         Ssl-cert


1.Instal paket-paket diatas.
2.#nano /etc/network/interfaces
Edit IP address sesuai dengan topologinya.
auto eth0
iface eth0 inet loopback
ipaddress 192.168.1.1
netmask 255.255.255.0
Setelah itu simpan.
3.Konfigurasi IP Forwadingnya #nano /etc/sysql.conf
                  Net.ipv4.ip_forward=1
4.Konfigurasi interface agar client bisa koneksi ke server.
#iptables –t nat –A POSTROUTING –o eth0 –j MASQUERADE
Jika menggunakan wired maka gunakan eth0 tetapi bisa diganti dengan wlan0 jika tersambungnya menggunakan wireless.
5.Konfigurasi apache SSL:
#a2enmod ssl
#mkdir /etc/apache2/ssl
#openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt
6.Konfigurasi apache2 :
#nano/etc/apache2/site-available/default-ssl
#File sertifikat dan key apache disesuaikan
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
7.Tambahkan servername di #nano /etc/apache2/apache2.conf
            ServerName 192.168.2.1
Servernamenya tergantung dari IP gateway yang digunakan.
8.Buka hak aksesnya dengan #chown –R www-data.www-data /etc/apache2/ssl
9.#a2ensite default-ssl
10.  #service apache2 reload
11.  Konfigurasi Database MySQL
# mysql –u root -p
mysql> create database radius;
mysql> grant all privileges on radius.* to ‘radius’@'localhost’ identified by ‘radpass’;
mysql> grant all privileges on radius.* to ‘radius’@’127.0.0.1′ identified by ‘radpass’;
mysql> \q
Keterangan ..on radius.. adalah nama databasenya.
…*to ‘radius’.. adalah nama untuk login di radiusnya.
..identified by ‘radpass’; adalah password untuk koneksi ke databasenya.
12.  Konfigurasi freeradiusnya (uncomment dan tambahkan yang tidak ada di konfigurasi dibawah ini):
#nano /etc/freeradius/radiusd.conf
$INCLUDE sql.conf
$INCLUDE sql/mysql/counter.conf
instantiate {
noresetcounter
}
            Setelah itu simpan.
#nano /etc/freeradius/sql.conf
server = “localhost”
#port = 3306
login = “radius”
password = “radpass”
radius_db = “radius”
readclients = yes
 Setelah itu simpan.
#nano /etc/freeradius/sites-enabled/default
authorize {
sql
noresetcounter
}

accounting {
sql
sql_log
}

session {
radutmp
sql
}

post-auth {
sql
sql_log
}

Post-Auth-Type REJECT {
# log failed authentications in SQL, too.
sql
attr_filter.access_reject
}
            Setelah edit data diatas simpan.

#mkdir /var/log/freeradius/radacct
#touch /var/log/freeradius/radacct/sql-relay
#chmod 777 /var/log/freeradius/radacct/sql-relay
13.  Edit konfigurasi freeradius  client (uncomment dan tambahkan yang tidak ada di konfigurasi dibawah ini):
#nano /etc/freeradius/clients.conf
client localhost {
ipaddr = 127.0.0.1
secret = testing123
require_message_authenticator = no
shortname = localhost
nastype = other
}
14.  Import tabel freeradius pada mysq:
 #mysql –u root –p radius </etc/freeradius/sql/mysql/schema.sql
#mysql –u root –p radius </etc/freeradius/sql/mysql/nas.sql
15.  Restart freeradiusnya
#/etc/init.d/freeradius restart
16.  Tambahkan user #mysql –u root –p
mysql> use radius;
mysql> insert into radcheck (Username,Attribute,Value)values (‘riska’,’Password’,’riska’);
17.  Restart semuanya setelah konfigurasi selesai:
#/etc/init.d/freeradius restart
#/etc/init.d/apache2 restart
18.  Pengujian Freeradius dengan jika tampil seperti gambar dibawah ini:
19. Konfigurasi Chillispotnya: #nano /etc/chilli.conf
debug /*menjalankan fungsi debug*/ 
pidfile /var/run/chilli.pid /*di-un-comment, letak dari chilli.pid*/ 
net 192.168.2.0/24 /*diisi sesuai dengan network yg ingin digunakan*/ 
dns1 192.168.2.1/*diisi sesuai dengan DNS yang anda gunakan*/ 
radiusserver1 127.0.0.1 /*diisi sesuai dengan tutorial*/ 
radiusserver2 127.0.0.1 /*diisi sesuai dengan tutorial dan wajib diisi walau hanya menggunakan 1 radiusserver*/  
radiussecret testing123 /*sesuaikan dengan yang ada pada /etc/freeradiusclients.conf*/
dhcpif wlan0 /*interface yg digunakan utk tunneling, biasanya menggunakan wlan0 */
uamserver https://192.168.2.1/cgi-bin/hotspotlogin.cgi /*alamat utk login pada ChilliSpot */
 uamsecret uamsecret  

              20. Lakukan perintah dibawah ini:
#cd /usr/share/doc/chillispot/
#cp hotspotlogin.cgi.gz /usr/lib/cgi-bin/
#cd /usr/lib/cgi-bin/
#gunzip hotspotlogin.cgi.gz
               21.Konfigurasi #nano /usr/lib/cgi-bin/hotspotlogin.cgi
$uamsecret = “testing123″;
$userpassword=1;
   22. Konfigurasi #nano /etc/default/chillispot
ENABLED=0
#/etc/init.d/chillispot restart

Permasalahan yg mungkin muncul saat melakukan ataupun ketika konfigurasi sudah selesai adalah tidak mau nya redirect halaman login dan gagal ("Login Failed || Login must be performed through ChilliSpot Daemon") pada saat halaman login akan ditampilkan, cara berikut ini bisa digunakan utk mengatasi masalah yg mungkin muncul,
1. pastikan sudah melakukan chmod 777 dan bukan chmod 755 pada hotspotlogin.cgi
2.   coba ketikkan alamat ip yg digunakan + port ChilliSpot sebagai pengganti dari UAMServer (https://10.10.5.1/cgi-bin/hotspotlogin.cgi), contoh : "10.10.5.1:3990" gunakan "http" bukan "https" pada bagian ini.
3.      jika masih gagal, coba gunakan perintah ini "nano /etc/modules" pada baris paling bawah tambah kan "tun" lalu keluar dari editor, ketikan perintah "sudo modprobe tun" utk meng'enable tanpa restart, silahkan coba lagi pada client nya, kalo masih gagal coba utk disable sejenak lalu enable kembali koneksi pada client.
4.  jika masih juga menemui kegagalan coba edit login script yg terdapat pada /var/www/hotspot/ dengan perintah "nano /var/www/hotspot/cgi-bin/hotspotlogin.cgi" Uncomment dan ubah password "$uamsecret = "uamsecret"; /*un-comment dan sesuaikan dengan yg ada pada chilli.conf*/" "$userpassword=1; /*un-comment*/"
5.    jika masih gagal lagi, coba cek kembali pengaturan dan baca do'a lebih sering agar berhasil berjalan konfigurasi yg sudah dilakukan, selamat mencoba.. :) 

Setelah semua konfigurasi selsai lakukan pengencakan pada computer client.
11. Koneksikan ke adhoc yang telah dibuat di freeradius. IP yang didapat oleh client adalah IP DHCP.
22. Cek dengan browser http://192.168.2.1/  jika berhasil akan tampil seperti gambar dibawah ini.


 
Jika bisa login maka akan tampil seperti gambar berikut: