Setelah dalam tutorial saya sebelum ini yang isinya tentang Instalasi FreeRadius di Ubuntu 8.04, sekarang saya akan lanjutkan dengan Instalasi FreeRadius + Chillispot + PhpMyPrepaid di Ubuntu 8.04. Hohoho, setelah beberapa hari mengoprek, akhirnya saya bisa juga menginstall gabungan dari ketiga aplikasi ini hehehe..
Oke, langsung saja kita mulai tutorialnya hehe..
Prerequisite:
Oya, Saya berasumsi Ubuntu anda sudah terinstal dengan baik di komputer anda, dan terhubung ke internet.
Sistem yang digunakan memiliki 2 interface, yaitu eth0 dan eth1.
eth0 terhubung ke internet dan eth1 terhubung ke jaringan internal hotspot yang anda miliki.
Diharapkan yang baca artikel ini sudah mahir menggunakan editor teks. Bisa menggunakan nano atau vi. Tergantung selera hehe..
Server FreeRadius+Chillispot+PhpMyPrepaid selanjutnya akan saya sebut “Server” saja.
Topologi jaringan nya adalah sebagai berikut:
Internet — (eth0) Server Anda (eth1) — Access Point — > Laptop User
Pada kasus saya, internetnya merupakan jaringan internal kantor saya yang networknya 192.168.212.0/24, sedangkan jaringan internal hotspot saya diset pada network 10.3.11.0/24
Mari kita mulai langkah2nya
1. Buat eth0 terkoneksi ke internet. Sangat mudah jika interfacenya di set static. Berikut adalah isi dari /etc/network/interfaces saya. Konfigurasi untuk eth1 tidak usah diisi karena nanti eth1 diberi setingan DHCP dari Chillispotnya
auto lo
iface lo inet loopbackiface eth0 inet static
address 192.168.212.41
netmask 255.255.255.0
gateway 192.168.212.1auto eth0
2. Pastikan juga isi dari /etc/resolv.conf benar supaya setting DNS dari Server nya benar
3. Edit file /etc/sysctl.conf. Uncomment bagian ini agar Kernel Ubuntu dapat forwarding packet
# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1
Lalu load ulang sysctl dengan mengetik
#sysctl -p
4. Install program yang dibutuhkan
apt-get install unzip fakeroot ssh build-essential rrdtool snmp apache2 php5 php5-mysql ssl-cert freeradius freeradius-mysql chillispot mysql-server-5.0 php5-common php5-gd php-pear php-db libapache2-mod-php5
Ga semua program di atas dibutuhin sih.. Cuman menurut panduan yang gw baca sih ditulisnya begitu hehe..
5. Buat File di /etc/network/option. Trus isi dengan
ip_forward = yes
Sebenernya sih ngga usah, karena langkah ini tuh sama dengan langkah no.5. Lagi2 karena panduan yang gw baca ini hehe..
6. Edit file /etc/apache2/apache2.conf
tambahkan di bagian bawah file nya:
ServerName 192.168.212.41
IP address ini adalah IP address eth0 anda.
7. Edi file /etc/php5/apache2/php.ini
Cari tulisan:
; extension=msql.so
Hapus tanda titik koma nya dan ganti msql.so jadi mysql.so
extension=mysql.so
Cari juga tulisan:
post_max_size = 8M
Ganti 8M menjadi 16M
post_max_size = 16M
8. Download paket phpmyprepaid lalu letakkan di folder /var/www dan ekstrak
#cd /var/www
#tar -xzvf phpmyprepaid04RC2.tgz
9. Sebelum menginstall PhpMyPrepaid, ubah dulu akses folder dari folder di bawah ini ke 777
#chmod 777 /var/www/phpmprepaid/www
10. Buat table phpmyprepaid di mysql anda.
#mysql -u root -p
mysql> CREATE DATABASE phpmyprepaid;
mysql> GRANT ALL PRIVILEGES ON phpmyprepaid.* to ‘phpmyprepaid’@'localhost’ IDENTIFIED BY ‘passphpmyprepaid-mysql-gwa’;
mysql> exit
11. Install Program PhpMyPrepaid
Buka Mozilla Firefox dan arahkan addressnya ke :
http://192.168.212.41/phpmyprepaid/www/install/setup.php
Saya ingatkan lagi, 192.168.212.41 adalah ip address eth0 yang terhubung ke internet
Klik start
Konfigurasi yang harus dipastikan benar adalah sebagai berikut:
PhpMyPrepaid install directory : /var/www/phpmyprepaid
FreeRADIUS binary files directory : /usr/sbin
FreeRADIUS config files directory : /etc/freeradius
FreeRADIUS dictionary directory : /usr/share/radius
FreeRADIUS start/stop/restart/status script : /etc/init.d/freeradius
FreeRADIUS radius log file path : /var/log/freeradius/radius.log
RRDTOOL binary path : /usr/bin/rrdtool
Sudo binary path : /usr/bin/sudo
System log file path : /var/log/messages
Radclient command : /usr/bin/radclient
MySQL client commmand : /usr/bin/mysql
snmpwalk command : /usr/bin/snmpwalk
snmpget command : /usr/bin/snmpget
Lalu konfigurasi di halaman selanjutnya adalah sebagai berikut
Root password for MySQL : passroot-mysql-gwa
PhpMyPrepaid Database Name (phpmyprepaid) : phpmyprepaid
PhpMyPrepaid Database Password : passphpmyprepaid-mysql-gwa
Confirm Password : passphpmyprepaid-mysql-gwa
Database location (localhost) : localhost
FreeRadius location (localhost) : localhost
FreeRadius version : 1.X
Lalu konfigurasi di halaman selanjutnya adalah sebagai berikut
Administrator login for PhpMyPrepaid : userlogin-phpmyprepaid-gw
Administrator password for PhpMyPrepaid : passlogin-phpmyprepaid-gw
Confirm Password : passlogin-phpmyprepaid-gw
Administrator name for PhpMyPrepaid : ngadimin
Administrator surname for PhpMyPrepaid : Ngadimin Ganteng
Administrator email for PhpMyPrepaid : ngadimin@ganteng.com
Administrator language for PhpMyPrepaid : en
12. Konfigurasi paska instalasi PhpMyPrepaid
Hapus folder instalasi
#rm -rf /var/www/phpmyprepaid/www/install
Ubah Hak Akses foldernya kembali
#chmod 755 /var/www/phpmyprepaid/www
Setting Chillispot
1. Buka /etc/chilli.conf. Isi konfigurasi minimal sebagai berikut
net 10.3.11.0
dns 202.46.240.99
radiusserver1 127.0.0.1
radiussecret passsecretnya-radius-gw
dhcpif eth1
uamserver https://10.3.11.1/cgi-bin/hotspotlogin.cgi
uamsecret pass-secret-uam-gw
uam listen 10.3.11.0
2. Buat file hotspotlogin.cgi di folder cgi-bin
#cp /sr/share/doc/chillispot/hotspotlogin.cgi.gz /usr/lib/cgi-bin
#gunzip /usr/lib/cgi-bin/hotspotlogin.cgi.gz
#cd /usr/lib/cgi-bin
#chmod 755 hotspotlogin.cgi
3. Edit file /usr/lib/cgi-bin/hotspotlogin.cgi
Uncomment 2 buah baris, sehingga menjadi seperti di bawah ini
$uamsecret = “pass-secret-uam-gw”;
$userpassword=1;
4. Aktifkan firewall chillispot dan buat firewallnya agar diaktifkan setiap kali server restart
#sh /usr/share/doc/chillispot/firewall.iptables
#cp /usr/share/doc/chillispot/firewall.iptables /etc/init.d/chilli.iptables
#chmod u+x /etc/init.d/chilli.iptables
#ln -s /etc/init.d/chilli.iptables /etc/rcS.d/S40chilli.iptables
Setting FreeRadius
1. Edit file /etc/freeradius/clients.conf
Cari konfigurasi berikut dan modifikasi menjadi seperti ini
client 127.0.0.1 {
secret = pass-client-radius-testing123-gw
shortname = localhost
nastype = other
}
2. Edit file /etc/freeradius/sql.conf
#Connect Info
server = “localhost”
login = “phpmyprepaid”
password = “passphpmyprepaid-mysql-gwa”#Database table configuration
radius_db = “phpmyprepaid”
3. Edit file /etc/freeradius/radiusd.conf
Cari konfigurasi berikut
$INCLUDE ${confdir}/sql.conf
Dan tambahkan baris di bawahnya sehingga menjadi sebagai berikut
$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}’”
}
Cari konfigurasi untuk accounting, instantiate, dan authorize. Lalu setting menjadi seperti di bawah ini dengan cara menghilangkan tanda pagarnya.
Selain itu, berikan tanda pagar untuk yang lain.
accounting {
unix
radutmp
sql
}instantiate {
exec
expr
noresetcounter
}authorize {
preprocess
chap
mschap
suffix
sql
noresetcounter
}
Setting Certificate
1. Konfigurasi Sertifikasi
#cd /etc/apache2
#mkdir ssl
#make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem
Lalu jawab pertanyaan-pertanyaan nya hehe…
2. Aktifkan dengan cara
#a2enmod ssl
#/etc/init.d/apache2 force-reload
3. Lalu buat file ssl dengan meng-copy dari default
#cd /etc/apache2/sites-available
#cp default ssl
4. Lalu edit /etc/apache2/sites-available/ssl. Ubah bagian awalnya jadi seperti ini
NameVirtualHost *:443
<VirtualHost *:443>
ServerAdmin webmail@localhostSSLEngine On
SSLCertificateFIle /etc/apache2/ssl/apache.pemDocumentRoot /var/www/
5. Kemudian di enable dengan cara
#a2ensite ssl
#/etc/init.d/apache2 reload
#/etc/init.d/apache2 restart
6. Restart semua aplikasi
#/etc/init.d/apache2 restart
#/etc/init.d/mysql restart
#/etc/init.d/chillispot restart
#/etc/init.d/freeradius restart
Setelah itu, colok Access Point ke eth1. Lalu laptop user dihubungkan ke Access Point tersebut.
Setelah tersambung, coba cek dulu apakah laptop user dah dapet IP address dari chillispotnya apa belum
Nah kalo udah tersambung, coba browsing ke situs mana saja, user laptop akan teredirect ke halaman login
Fiuhh, panjang juga ni artikel ckck.. Kalo ada yang error, tolong kasi tau sebelah mana yang error yup. Siapa tau saya salah nulis.
Kalo saya sih sudah bisa dengan baik
.
Tapi konfigurasi di jaringan saya memiliki satu masalah. Konfigurasi di jaringan saya adalah sebagai berikut:
Internet — Proxy Server — (eth0) Server Anda (eth1) — Access Point — > Laptop User
Di jaringan saya, setiap user diharuskan menggunakan Proxy sebelum ke internet. Masalahnya, chillispot tidak mempunyai konfigurasi untuk mengenali Proxy Server setelah terautentikasi.
Hmm, setelah saya browsing sanasini, saya akhirnya menemukan pengganti Chillispot. Namanya adalah CoovaChilli. Chillispot itu sudah tidak dikembangkan lagi dan penerusnya bernama CoovaChilli.
CoovaChilli ini memiliki konfigurasi yang bernama Post-Auth Proxy..
Wah, mengoprek lagi neh hehe..
Fiuhh, nulis blog ini saja seharian hehe.. Tapi saya puas
..
—————————————————————————————–
Tulisan ini banyak diambil dari:
http://pinokiook.blogspot.com/2008/03/buat-hotspot-dengan-menggunakan-apache.html
http://pinokiook.blogspot.com/2008/03/buat-hotspot-dengan-menggunakan-apache_13.html
http://www.technorody.com/membangun-server-hotspot-dengan-chillispot-dan-freeradius.rody

salama kenal,
saya kebetulan mampir ke blog Anda dan membaca seputar installasi dan konfigurasi freeradius. sejauh ini saya sudah menginstall dan mengkonfigurasi freeradius dan chillispot dengan database mysql sebagai beckend untuk menyimpan data client. dan sudah berjalan dengan benar.
nah yang saya ingin tanyakan bagaimana cara untuk melakukan performance test dan stress test pada server radius yang saya jalankan untk mengetahui sejauh apa kemampuan server radius saya.
saya pernah mencoba menggunakan evoLynx radius test yang saya jalankan dari client yang sudah terkoneksi dengan server radius tapi hasilnya “no respond from server” apa ada tool yang kurang di server radius saya sehingga tidak bisa mereply..
mohon jawabannya.
terimakasih atas feedbacknya
terus berkaya menulis dan berikan yang erbaik untuk negara dan untuk komunitas maya.
salam Nizar
semua service telah berjalan dengan baik tapi saat akses ke https://192.168.100.1/cgi-bin/hotspotlogin.cgi
kok error ya….please bales ke email ku y…
@nizar
Wah saya blom melakukan performance test dan stress test pada server radius untk mengetahui sejauh apa kemampuan server radius. Bro nizar pake evoLynx yup. Saya baru tau.. Musti ngoprek dulu neh hehe.. Thanks for info
@kambing jawa
Errornya apa?
itu ngakses alamat itu dari user-client, ato dari servernya? Kalo dari servernya ya ga bisa, kalo client nya sih ngaksesnya pada saat sudah konek ke Access Pointnya tapi blom autentikasi, otomatis ngeredirect kok..
@nizar
evoLynx itu buat Windows yup?
saya dah coba install radius server step by step, lalu saya connecting pada notebook, hasilnya connect. namun saat browsing pake mozilla “hyyp://ip_eth0/phpmyprepaid/www/”
tampilannya sbb:
“The requested URL /cgi-bin/hotspotlogin was not found on this server”
saya mohon pencerahannya, karena saya udah ubek-ubek ke om google ngga dapet-dapet.
terima kasih
@ruby
Apakah mas sudah melakukan Setting Chillispot langkah ke-2 ama ke-3?
Kalo tulisannya “The requested URL /cgi-bin/hotspotlogin was not found on this server” kan artinya di folder /usr/lib/cgi-bin ngga ada file hotspotloginnya..
sudah saya setting, dan hotspotlogin udah ada di “/usr/lib/cgi-bin/hotspotlogin.cgi”
Kalo file /usr/lib/cgi-bin/hotspotlogin.cgi di chmod 777 ngaruh ga?
chmod 777 /usr/lib/cgi-bin/hotspotlogin.cgi
salam hangat…:)
saya sudah mencoba menjalankan semuanya langkah2 tersebut diatas, namun ketika saya menggunakan user yang saya buat dari phpmyrpepaid tidak jalan sedangkan dari yang di entry langsung ke database bisa. tolong pencerahannya ya mas..
TQ B4
@raji
hah? maksudnya user-yang-anda-buat-dari-phpmyprepaid tuh user yang mana yup? trus kalo user-yang-di-entry-langsung-ke-database tuh user yang mana?
kalo user administrator phpmyprepaid tuh kan yang:
Administrator login for PhpMyPrepaid : userlogin-phpmyprepaid-gw
Administrator password for PhpMyPrepaid : passlogin-phpmyprepaid-gw
Confirm Password : passlogin-phpmyprepaid-gw
kalo user yang megang database administrator di MySQL nya kan yang:
mysql> CREATE DATABASE phpmyprepaid;
mysql> GRANT ALL PRIVILEGES ON phpmyprepaid.* to ‘phpmyprepaid’@’localhost’ IDENTIFIED BY ‘passphpmyprepaid-mysql-gwa’;
mysql> exit
jadi userlogin yang dipake masuk ama PhpMyPrepaidnya untuk masuk MySQL nya kan bukan root, tapi yang: user=phpmyprepaid, pass=passphpmyprepaid-mysql-gwa
ya saya sudah coba mennggunakan evolynx load test tapi software tersebut tidak berhasil membuat virtula user pada server radius. yang terjadi hanya evolyx melakukan koneksi sebanyak nilai yang dimasukkan pada software tersebut dan juga tidak ada report detail cuman ada sedikit informasi tentang request-accept dan reject.
klu boleh tau mas setingannya persisnya dmn? n klu bisa tolong kirimkn configurasi phpmyprepaidx versi guix.
oya satu lg masalah yaitu user/tiket yang dibuat phpmyprepaid bisa digunakan bersamaa/multi login dikomputer yang berbeda gimana solusinya…? Thanks all
@nizar
hmm, evoLynx itu kayanya cuman ngetest seberapa banyak koneksi yang bisa ditangani oleh server Radius dalam waktu yang bersamaan.. gitu kali yup..
ooo harus akses dari klien y….aku coba akses dari server http://192.168.100.1/cgi-bin/hotspotlogin.cgi
ChilliSpot Login Failed
Login must use encrypted connection.
kalo akses https://192.168.100.1/cgi-bin/hotspotlogin.cgi
ChilliSpot Login Failed
Login must be performed through ChilliSpot daemon.
apa untuk versi ubuntu juga pengaruh???aku pake ubuntu8.10
udah coba pake coovachilli tapi malah bermasalah sama settingan uamallow nya…
Salam
saya telah jalankan turorial di atas, semua service nya jalan. Dan client udah bisa mendapatkan ip yang diberikan oleh server nya. Namun ketika diarahkan ke URL https://192.168.182.1/cgi-bin/hotspotlogin.cgi ..keluar pesan berikut : Internal Server Error…..
salahnya di mana ya…
tq
@fiqa
udah bisa dapet ip yup..
“Namun ketika diarahkan ke URL https://192.168.182.1/cgi-bin/hotspotlogin.cgi ..”
kalo dari user sih ngga usah diarahkan ke sana.. tapi masuk aja situs apapun.. kalo misalkan belom login, pasti di-redirect ke halaman login tersebut..
Semoga membantu..
salam
saya uda install sesuai tutorial di atas, tp ada masalah di phpmyprepaidx di created accounts(Octets Accounts) pesan errornya seperti berikut mohon solusix thanks.
SESSION ID : 0f0a4a0c610b5961b297caed1a0bee25
USER STATUS : 1
LOCATION : 1
LOCATION NAME : FMIPA
BUTTON : CR_Octets
USERNAME NAME LENGHT KEYGENN eahucf PASSWD LGHT KEYGENN qvw
BILLING PLAN :15
UPLOAD :
DOWNLOAD :
BUTTON ID CR_Octets DBTABLE 1 DBTABLE 2
UPLOAD FINAL :512000
DOWNLOAD FINAL :512000
Found 0 rowsError when query the database: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘(UserName, Attribute, op, Value) VALUES(‘eahucf’, ”, ‘:=’, ’31457280′ )’ at line 1 Query: INSERT INTO (UserName, Attribute, op, Value) VALUES(‘eahucf’, ”, ‘:=’, ’31457280′ )
@ronaldinside
, kliatannya ada masalah dengan database MySQL nya.. coba liat lagi konfigurasi MySQLnya..
Wah, hmm, knapa yup
Oia..Mas, konfigurasi di chillispot di phpmyprepaid di setting manual kah..?
Waktu saya klik read chillispot di phpmyprepadix ada pesan error:
permision denied di /var/www/phpmyprepaid/include/configuration/chillispot.php
Oia Mas.., apakah karena saya ga pake firewall chillispot itu pengaruh ya…? abisx waktu pake firewall chillispot..trus server ga bisa ngeping kemana-mana, jadix juga ga bisa browsing…
Mohon dengan sangat pencerahannya….
Makasih Mas…
Mas.., saya dah setting konfigurasi di atas di ubuntu 8.10
Kemarin ga bisa ngeping.., setelah firewall chillix da saya aktifin, baru bisa ping n browsing..
Masalahx sekarang web browser client ga diredirect oleh chillispot…Tolong Mas..!!
Konfigurasi accounting n authorize di /etc/freeradius/radiusd.conf juga ga ada.., yang ada cuma instantiate aja…
Tolong Mas.., Saya dah instal ulang ubuntux sampe 4 kali.., tapi tetap aja..
Tolong ya Mas Agung…, saya harus segera selesaikan Mas.., coz.. bentar lagi harus didemokan…
Semoga Tuhan membalas kebaikan Sampeyan…
Terimakasih…
makasih ya…mas….totur ini membantu saya dalam menyelesaikan tugas….
mas agung,
setelah 1 bulan berjuang akhirnya sudah muncul halaman chillispot loginnya…
waktu saya mau masuk sbg user, login selalu failed??
padahal saya sudah mencoba meng insert langsung ke database…
bgmn menambah usernya???
tabel database phpmyprepaid yang mana yang berhubungan langsung dengan user???
terimakasih…
saya sudah mencoba menjalankan semuanya langkah2 tersebut diatas, namun ketika saya menggunakan user yang saya buat dari phpmyprepaid, user tidak bisa login dan tidak bisa internet..masalahnya dan solusinya gimana ya ?
mas mau tanya untuk access point perlu diinstall openwrt tidak? saya coba tidak bisa keluar tampilan login chilispotnya.
hello there, i merely found your land site by mean values of aol,.and i have to tell that you just ready exceptionally neat by applying your internet site.we are essentially wared with the mapping that you merely compose ,.along with the content is fantabulous . regardless,.i would in add on like to recognise irrespective of whether you would like to swap back radio links together with my.personal network hepatic portal vein ? i’ll be towards great extent than willing to reciprocate and put in your current url away.from inside connectedness share. Looking singles reply , we give the truthful thank you along with gooday! I will are available back over again.