Bang Opick dan rekan-rekan kioser, baiklah saya akan menuliskan kembali yang telah saya lakukan di PC saya (bakal server nanti
)
Jika ada yang salah mohon dikoreksi kerena saya murni baru di dunia Linux opensource software
install ubuntu servernya, di sini saya mengikuti tutorial dari Bang Opick
- Ubuntu Server 8.04.3 server, paket yang di install
- LAMP Server
- DNS Server
- OpenSSH Server
- Print Server
- Samba file Server
- webmin (untuk hapus database di mysql jika salah isi databasenya
)
Putty dan winscp diklient untuk remote server dari client dan file transfer
Topologi:
internet ---- modem --------ubuntu server ------- switch ------- AP dan/atau LAN
Jangan lupa update dan upgrade ubuntu servernya
Edit file /etc/sysctl.conf untuk forwarding paketnya
#net.ipv4.ip_forward=1
ganti jadi:
net.ipv4.ip_forward=1
Proses installasi berpedoman pada blognya orang Thailand: http:http://manajung.blogspot.com/2010/01/daloradius-on-ubunto-910.html
1. Install Freeradius 2.x dari source
apt-get install freeradius freeradius-mysql
proses installasi akan menanyakan paket pendukung, saya yes aja :D
stop freeradiusnya
/etc/init.d/freeradius stop
jalankan dalam mode debug
freeradius -X
jika tidak ada error tekan ctrl+c untuk stop debug dan di lanjut
masukkan database ke mysql
mysql -u root -p
masukkan passwordnya: password root mysql anda
CREATE DATABASE radius;
GRANT ALL PRIVILEGES ON radius.* TO 'radius'@'localhost' IDENTIFIED BY 'radiussecret';
FLUSH PRIVILEGES;
quit
masukkan skema contoh dari freradius
mysql -u root -p radius < /etc/freeradius/sql/mysql/schema.sql
masukkan password root mysql anda
mysql -u root -p radius < /etc/freeradius/sql/mysql/nas.sql
masukkan password root mysql anda
Sinkronkan freeradius dgn Databasenya
nano /etc/freeradius/sql.conf
cari baris dibawah ini jika tidak sama di ganti
server = "localhost"
login = "radius"
password = "radiussecret"
kemudian masih dalam file ini, hapus tanda pound pada baris:
# readclient = yes
menjadi
readclient = yes
Setup freeradius server client passwordnya
nano /etc/freeradius/clients.conf
cari baris
secret = testing123
ganti menjadi
secret = radiussecret
Ganti autorisasi freeradius ke sql
nano /etc/freeradius/sites-available/default
pada section authorize, cari baris
files tambahkan tanda # menjadi
# files
cari baris
# sql, hapus tanda commentnya menjadi
sql
cari lagi baris sql pada section accounting dan session, jika ada tanda comment (#) hilangkan
save dan exit
Tes freeradiusnya dgn memasukkan username dan password
mysql -u root -p
masukkan password root dari mysql anda
use radius;
INSERT INTO radcheck (UserName, Attribute, Value) VALUES ('guest', 'password', 'guest')
select * from radcheck where UserName='guest';
exit
Restart freeradiusnya
/etc/init.d/freeradius restart
ketik pada console
radtest guest guest localhost 0 radiussecret
jika berhasil akan keluar result seperti ini;
rad_recv: Access-Accept packet from host localhost port 1812, id=234, length=20
==========setup freeradius selesai
==============
2. Install coovachilli
Download coova-chilli
wget http://ap.coova.org/chilli/coova-chilli_1.0.13-1_i386.deb
Install coova-chilli
dpkg -i coova-chilli_1.0.13-1_i386.deb
copy default konfigurasi chilli agar bisa di custom
cp /etc/chilli/default /etc/chilli/config
Buat folder hotspot
mkdir /var/www/hotspot
cd /var/www/hotspot
cp /etc/chilli/www/* /var/www/hotspot
mkdir /var/www/hotspot/images
cp /var/www/hotspot/coova.jpg /var/www/hotspot/images/
Buat Folder uam
mkdir /var/www/hotspot/uam
cd /var/www/hotspot/uam
wget http://ap.coova.org/uam/
wget http://ap.coova.org/js/chilli.js
Ganti host address local
sed -i 's/ap.coova.org\/js\/chilli.js/192.168.0.1\/uam\/chilli.js/g' /var/www/hotspot/uam/index.html
Edit library dari chilli untuk menggunakan ip tadi
sed -i 's/192.168.182.1/192.168.0.1/g' /etc/chilli/www/ChilliLibrary.js
sed -i 's/192.168.182.1/192.168.0.1/g' /var/www/hotspot/ChilliLibrary.js
untuk mengaktifkan coovachilli edit: START_CHILLI menjadi 1
nano /etc/default/chilli
START_CHILLI=1
CONFFILE="/etc/chilli.conf"
Edit file configurasi chilli
edit parameter (kurang lebih)seperti dibawah ini):
HS_LANIF=eth1 # Subscriber Interface for client devices
HS_NETWORK=192.168.0.0 # HotSpot Network (must include HS_UAMLISTEN)
HS_NETMASK=255.255.255.0 # HotSpot Network Netmask
HS_UAMLISTEN=192.168.0.1 # HotSpot IP Address (on subscriber network)
HS_UAMPORT=3990 # HotSpot Port (on subscriber network)
HS_NASID=nas01
HS_UAMSECRET=uamsecret
HS_RADIUS=127.0.0.1
HS_RADIUS2=127.0.0.1
HS_RADSECRET=radiussecret
HS_UAMALLOW=www.google.com,192.168.0.0/24
HS_UAMSERVER=192.168.0.1
HS_UAMFORMAT=http://\$HS_UAMSERVER/uam/index.php
HS_UAMHOMEPAGE=http://\$HS_UAMLISTEN:\$HS_UAMPORT/www/coova.html
HS_UAMSERVICE=https://192.168.0.1/cgi-bin/hotspotlogin.cgi
Edit firewall chilli
nano /etc/chilli/up.sh
tambahkan di baris paling bawah;
# may not have been populated the first time; run again
[ -e "/var/run/chilli.iptables" ] && sh /var/run/chilli.iptables 2>/dev/null
# force-add the final rule necessary to fix routing tables
iptables -I POSTROUTING -t nat -o $HS_WANIF -j MASQUERADE
===========Coovachilli selesai
=====================
3. Install SSL
apt-get install libapache2-mod-auth-mysql
buat folder ssl
Install certificate
Lihat nama host untuk di masukkan nanti pada saat pembuatan certificate
Generate ssl-cert nya
make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem
Edit hosts nya
nano /etc/hosts
127.0.0.1 localhost
192.168.0.1 ## your hostname
Enable module ssl
a2ensite ssl
/etc/init.d/apache2 force-reload
Create Virtual host untuk hotspot
nano /etc/apache2/sites-available/hotspot
isinya kurang lebih seperti ini;
NameVirtualHost 192.168.0.1:443
<VirtualHost 192.168.0.1:443>
ServerAdmin [email protected]
DocumentRoot "/var/www/hotspot"
ServerName "192.168.0.1"
<Directory "/var/www/hotspot/">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
Alias "/dialupadmin/" "/usr/share/freeradius-dialupadmin/htdocs/"
<Directory "/usr/share/freeradius-dialupadmin/htdocs/">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
<Directory "/var/www/hotspot/cgi-bin/">
AllowOverride None
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/hotspot-error.log
LogLevel warn
CustomLog /var/log/apache2/hotspot-access.log combined
ServerSignature On
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.pem
</VirtualHost>
Enable virtual hostnya
Edit listen portnya,seperti ini
nano /etc/apache2/ports.conf
Listen *:443
Listen *:80
#<IfModule mod_ssl.c>
# Listen 443
#</IfModule>
Jangan lupa edit defaultnya
nano /etc/apache2/sites-available/default
NameVirtualHost *:80
<virtualhost *:80>
Create login page untuk hotspotnya
mkdir -p /var/www/hotspot/
cd /var/www/hotspot/
wget http://www.truesoft.co.th/wifi/uam.tgz
tar -xzvf uam.tgz
Reboot server, saat ini seharusnya sudah bisa dapat ip dhcp dari coovachillinya 
4. Install Daloradius
Download versi terbaru dari daloRADIUS
wget http://sourceforge.net/project/daloradius//files/daloradius/daloradius-0.9-8.tar.gz
bisa juga download dari client trus di copy pake winscp 
extract
tar -xzvf daloradius-0.9-8.tar.gz
copy ke directory www
cp daloradius-0.9-8 /var/www/ -R
Ganti owner dan permission
chown www-data:www-data /var/www/daloradius-0.9-8 -R
chmod 644 /var/www/daloradius-0.9-8/library/daloradius.conf.php
masukkan database daloradius ke database radius yang sudah kita setup tadi
mysql -u root -p radius < /var/www/daloradius-0.9-8/contrib/db/mysql-daloradius.sql
masukkan password root mysql anda
Sesuaikan parameter databasenya
nano /var/www/daloradius-0.9-8/library/daloradius.conf.php
Isinya di sesuaikan untuk baris berikut:
'FREERADIUS_VERSION' = '2';
'CONFIG_DB_ENGINE' = 'mysql';
'CONFIG_DB_HOST' = '127.0.0.1'
'CONFIG_DB_USER' = 'radius'
'CONFIG_DB_PASS' = 'radiussecret'
'CONFIG_DB_NAME' = 'radius'
Pastikan paket pendukung php sudah terinstall jika belum di yes aja 
apt-get install php5-common php5-gd php-pear php-db libapache2-mod-php5
Silahkan di coba untuk browsing ke alamat: http://192.168.0.1/daloradius-0.9-8/login.php.
server bisa di reboot bisa juga tidak
username: Administrator
Password: radius
Tes dgn membuat user baru melalui front-end daloradius web management ex: user Rizal password contoh, maka akan langsung bisa login 
NB:
- Mohon maaf jika ada kesalahan dalam penulisan tutorial di atas (gak bisa codenya biar rapi, Om Mod tolong di edit ya bila memungkinkan)
. Saya mencoba menginstall program ini sampai sebulan lamanya
dgn over kuota speedy berjam-jam wkwkwkw
- referensi yang lain untuk installasi coova-chilli saya dapat disini: https://help.ubuntu.com/community/WifiDocs/CoovaChilli
- untuk menambahkan vendor chillispot pada daloradius saya ambil contoh dari tut bang Xeon mengenai yfi. file yang di edit untuk menambahkan dictionary.chillispot: /usr/share/freeradius/dictionary
Terima kasih 