Perkembangan
teknologi hotspot pada saat ini sudah merajalela. Yang mana hampir disetiap
tempat kita dapat menemukan jaringan hostpot. Namun terkadang ada beberapa
instansi, institusi, maupun perusahahan yang membutuhkan sebuah otentikasi agar
bisa menggunakan layanan internet tersebut. Hal ini dilakukan agar si penyedia
layanan internet dapat mengatur dan mengelola seluruh pemakai, bandwith, dll
didalam hotspot tersebut.
Metode
yang dijelaskan diatas disebut dengan metode Captive Portal. Captive Portal
merupakan suatu teknik otentikasi dan pengamanan data yang lewat dari network
internal ke network eksternal. Captive Portal sebenarnya merupakan mesin router
atau gateway yang memproteksi atau tidak mengizinkan adanya trafik, sampai user
melakukan registrasi terlebih dahulu ke dalam sistem. Biasanya Captive Portal
ini digunakan pada infrastruktur wireless seperti hotspot area, tapi tidak
menutup kemungkinan diterapkan pada jaringan kabel.
Mekanisme
proses teknologi captive portal ini yaitu ketika seorang pengguna berusaha
untuk mengakses Internet, sistem akan memaksa pengguna yang belum terotentikasi
untuk menuju ke autentication login yang telah disiapkan. Router / gateway
mempunyai mekanisme untuk menghubungi autentication server untuk mengetahui
identitas dari pengguna wireless yang tersambung, jika cocok maka login akan
diallow sesuai rule yang telah kita buat.
Pada
pembangunan captice portal ini, untuk system operasi yang digunakan yaitu
freebsd, untuk manajement client/user disini menggunakan freeradius, dan untuk
database billing menggunakan Mysql. Sedangkan software yang digunakan sebagai
aplikasi otentikasi yaitu Chillispot. Pada saat ini. Software untuk aplikasi
otentikasi beraneka ragam, namun akan kita bahas pada artikel berikutnya.
Ok.
Langkah-langkah pembuatan captive portal adalah sebagai berikut :
1. Sistem operasi Freebsd sudah di install dan
berjalan dengan baik
2. Instal web server beserta SSL-nya, PHP dan
Mysql
3. Download dan install aplikasi chilispot
Download : http://downloads.openwrt.org/sources/
# cd /home/cpa
# wget http://downloads.openwrt.org/sources/chillispot-1.0.tar.gz
# tar –xzvf chillispot-1.0.tar.gz
# cd chillispot-1.0
# ./configure –prefix=/usr/local/chilli
# make && make install
# wget http://downloads.openwrt.org/sources/chillispot-1.0.tar.gz
# tar –xzvf chillispot-1.0.tar.gz
# cd chillispot-1.0
# ./configure –prefix=/usr/local/chilli
# make && make install
4. Konfigurasi aplikasi chilispot
Copy file chilli.conf ke direktori
/etc. Kemudian edit file konfigurasi chilli.conf
# cp /home/rody/chillispot-1.0/doc/chilli.conf /etc/.
# vi /etc/chilli.conf
# vi /etc/chilli.conf
pidfile /var/run/chilli.pid
net 172.16..0/28
dynip 172.16.0/28
dns1 172.16.1.3
domain captport.net
radiuslisten 127.0.0.1
radiusserver1 127.0.0.1
radiusserver2 127.0.0.1
radiusauthport 1812
radiusacctport 1813
radiussecret cpatest
radiusnasid nas01
dhcpif fxp0
uamserver https://captport.net/cgi-bin/hotspotlogin.cgi
uamsecret secretuam
uamlisten 172.16.1.3
uamport 3990
uamallowed 172.16.1.3
net 172.16..0/28
dynip 172.16.0/28
dns1 172.16.1.3
domain captport.net
radiuslisten 127.0.0.1
radiusserver1 127.0.0.1
radiusserver2 127.0.0.1
radiusauthport 1812
radiusacctport 1813
radiussecret cpatest
radiusnasid nas01
dhcpif fxp0
uamserver https://captport.net/cgi-bin/hotspotlogin.cgi
uamsecret secretuam
uamlisten 172.16.1.3
uamport 3990
uamallowed 172.16.1.3
setelah konfigurasi chilispot selesai,
aktifkan fitur SSL pada webserver.
5.
Edit File hotspotlogin.cgi, dan letakkan pada direktori cgi-bin pada
webserver.
# cp /home/cpa/chillispot-1.0/doc/hotspotlogin.cgi
/usr/local/apache2/cgi-bin/.
# cd /usr/local/apache/cgi-bin
# vi hotspotlogin.cgi
# cd /usr/local/apache/cgi-bin
# vi hotspotlogin.cgi
cari baris #$uamsecret dan #$userpassword, setelah itu sesuaikan dengan
chilli.conf dan hilangkan tanda pagar, contoh :
Hilangkan tanda pagar didepannya :
$uamsecret = “sesuaikan dengan uamsecret yang ada pada
chilli.conf”;
$userpassword=1;
$userpassword=1;
6.
Download dan Install Freeradius
Download : http://downloads.openwrt.org/sources/
Download : http://downloads.openwrt.org/sources/
# cd /home/cpa
# wget http://downloads.openwrt.org/sources/freeradius-1.1.2.tar.gz
# tar –xzvf freeradius-1.1.2.tar.gz
# cd freeradius-1.1.2
# ./configure –prefix=/usr/local/radius
# make && make install
# wget http://downloads.openwrt.org/sources/freeradius-1.1.2.tar.gz
# tar –xzvf freeradius-1.1.2.tar.gz
# cd freeradius-1.1.2
# ./configure –prefix=/usr/local/radius
# make && make install
7. Konfigurasi clients.conf
# cd /usr/local/radius/etc/raddb
# vi clients.conf
client 127.0.0.1 {
secret = isinya sama seperti pd file chilli.conf
shortname = localhost
nastype = other
}
8. Konfigurasi radius.conf
Untuk konfigurasi radius.conf, edit
file radius.conf yang berada pada direktori yang sama dengan clients.conf
# vi radiusd.conf
cari baris dibawah ini :
$INCLUDE ${confdir}/sql.conf
$INCLUDE ${confdir}/sql.conf
Kemudian tambahkan beberapa baris
konfigrasi sehingga menjadi seperti ini :
$INCLUDE ${confdir}/sql.conf
sqlcounter noresetcounter {
counter-name = Max-All-Session-Time
check-name = Max-All-Session
sqlmod-inst = sql
key = User-Name
reset = never
query = “SELECT SUM(AcctSessionTime) FROM radacct where UserName=’%{%k}’“
}
sqlcounter noresetcounter {
counter-name = Max-All-Session-Time
check-name = Max-All-Session
sqlmod-inst = sql
key = User-Name
reset = never
query = “SELECT SUM(AcctSessionTime) FROM radacct where UserName=’%{%k}’“
}
Kemudian cari baris berikut dan
sesuaikan dengan konfigurasi yang ada di bawah ini :
accounting {
unix
radutmp
sql
}
unix
radutmp
sql
}
authenticate {
Auth-Type PAP {
pap
}
Auth-Type CHAP {
chap
}
Auth-Type MS-CHAP {
mschap
}
eap
}
Auth-Type PAP {
pap
}
Auth-Type CHAP {
chap
}
Auth-Type MS-CHAP {
mschap
}
eap
}
instantiate {
exec
expr
noresetcounter
}
exec
expr
noresetcounter
}
preacct {
preprocess
acct_unique
suffix
}
preprocess
acct_unique
suffix
}
authorize {
preprocess
chap
mschap
suffix
sql
noresetcounter
}
preprocess
chap
mschap
suffix
sql
noresetcounter
}
session {
sql
}
sql
}
9. Konfigurasi sql.conf
# vi sql.conf
yang perlu di edit ada adalah baris
berikut :
# Connect info
server = “localhost”
login = “user mysql anda”
password = “passwordnya”
# Database table configuration
radius_db = “databaseradius”
server = “localhost”
login = “user mysql anda”
password = “passwordnya”
# Database table configuration
radius_db = “databaseradius”
Pada database di mysql, sesuaikan dengan yang dikonfigurasi
pada sql.conf misalnya “databaseradius”
10. Installasi phpmyprepaid sebagai aplikasi web
based untuk manajemen user dan billing hotspot
download paket
phpmyprepaid0.3.3.tgz
# tar –xzvf phpmyprepaid0.3.3.tgz
# mv phpmyprepaid0.3.3 /usr/local/apache2/htdocs/prepaid
# cd /usr/local/apache2/htdocs/prepaid
# mv phpmyprepaid0.3.3 /usr/local/apache2/htdocs/prepaid
# cd /usr/local/apache2/htdocs/prepaid
# vi config.inc.php
$fpdfdir=”/usr/local/apache2/htdocs/prepaid/fpdf”;
# vi dbconnect.php
Pada hal ini, sesuaikan dengan system
yang telah dibuat
$my_host=”localhost”;
$my_user=”usernya”;
$my_pass=”passwordnya”;
$my_dbase=”databaseradius”;
$my_user=”usernya”;
$my_pass=”passwordnya”;
$my_dbase=”databaseradius”;
Setelah semua selesai, akses di browser dengan mengetikkan http://ipaddressataudomain/prepaid/, tabel-tabel pada
database radius akan tercreate sendiri dan kita akan diminta username dan
password untuk masuk login. Apabila sudah selesai, cobalah buat user beserta
password pada phpmyprepaid tersebut.
11. Menjalankan daemon chillispot dan freeradius
# /usr/local/chilli/sbin/chilli start &
12. Ujicoba dengan membuat user di aplikasi
phpmyprepaid, jika OK, Captive Portal siap digunakan.
0 komentar:
Posting Komentar