Captive portal dgn apache-ssl & chillispot

| Thursday, March 06, 2008

Postingan ini repost, berhubung yang dulu belum selesai dan kebetulan ada teman yang lagi pusing² mau nyoba captive portal ini. Kita mulai aja ya,.. *baca bismillah*

SESI KONFIGURASI HARDWARE

# ee /usr/src/sys/i386/conf/kernelku

Edit file kernelku, untuk firewall terserah tapi untuk device tun wajib, fadhu ain!

options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPFIREWALL_FORWARD
options IPFILTER
options IPDIVERT (jika natnya nanti menggunakan NATD)
options DUMMYNET
options TCP_DROP_SYNFIN
device tun

simpan dan building kernel
# config kernelku
Kernel build directory is ../compile/kernelku
Don't forget to do a ``make depend''
# cd ../compile/kernelku
# make depend && make && make install && reboot

Ok, urusan kernel selesai, pastikan kita memiliki 2 NIC. Untuk NIC yang terhubung ke internet silahkan diconfig, sedangkan untuk yang terhubung ke AP(Wireless device) jangan diberi ip. Berikut contohnya :

# ifconfig
rl0: flags=8802 mtu 1500 options=8 ether 00:0e:2e:cb:3c:bb media: Ethernet autoselect
media: Ethernet autoselect (100baseTX ) status: active

xl0: flags=8843 mtu 1500 options=9 inet 203.134.232.20 netmask 0xffffffc0 broadcast 203.134.232.63 inet6 fe80::2b0:d0ff:fe4b:af9%xl0 prefixlen 64 scopeid 0x2 ether 00:b0:d0:4b:0a:f9 media: Ethernet autoselect (100baseTX ) status: active

Untuk AP (Access Point) setting saja ssidnya, Modenya mode Access Point dan IPnya terserah (ip defaultnya ga masalah) yang penting client bisa konek ke AP kita. jangan aktifkan dhcpnya karena nanti chilli yang akan memberi ip ke client yang konek.

SESI MUMETISASI

Ok Urusan hardwarenya selesai, sekarang mulai proses instalasi software2 yang dibutuhkan :

download source file openssl openssl-0.9.8e dan ekstrak
./config
make && make test && make install

download source file apache httpd-2.2.3 dan ekstrak
./configure --prefix=/usr/local/apache --enable-ssl --with-ssl=/usr/local/ssl
make && make install

Untuk mengaktifkan ssl di httpd bisa di link ini http://www.dev411.com/wiki/Installing_Apache2_SSL

Untuk instalasi radius, ikuti petunjuk di postingan saya yang ini (mysql harus terinstall ya)

download source file chillispot-1.0 dan ekstrak
./configure
make && make install

# ee /usr/local/apache/conf/httpd.conf (setting directory cgi & ssl saya sbb:)
ScriptAlias /cgi-bin/ "/usr/local/apache/cgi-bin/"
Include conf/extra/httpd-ssl.conf

# ee /usr/local/apache/conf/extra/httpd-ssl.conf
Listen 443
DocumentRoot "/data"
ServerName 192.168.182.1
ServerAdmin noc.spin.net.id
SSLCertificateFile /usr/local/apache/conf/ssl.crt/server.crt
SSLCertificateKeyFile /usr/local/apache/conf/ssl.key/server.key

# cp /usr/local/share/chillispot/hotspotlogin.cgi /usr/local/www/cgi-bin/
# cp /usr/local/share/chillispot/chilli.conf /etc/chilli.conf

Saya anggap instalasi freeradius dan mysqlnya sudah terinstall dan berhasil.
Untuk chilli, konfigurasinya ada di /etc/chilli.conf, setting sbb :
net 192.168.182.0/24
dynip 192.168.182.0/24
statip 192.168.182.0/24
dns1 203.134.239.153
dns2 203.134.232.3
radiuslisten 203.134.232.20
radiusserver1 203.134.232.35 (ip dimana radius server terinstall)
radiusserver2 203.134.232.35 (ip dimana radius server terinstall)
radiusauthport 1812
radiusacctport 1813

# TAG: radiussecret
# Radius shared secret for both servers
# For all installations you should modify this tag.
radiussecret testing123
# password radius ada di /usr/local/etc/raddb/clients.conf

dhcpif rl0
# nama interface yang terhubung ke wireless device

# Universal access method (UAM) parameters
uamserver https://192.168.182.1/cgi-bin/hotspotlogin.cgi
uamhomepage http://192.168.182.1/welcome.html
uamsecret ht2eb8ej6s4et3rg1ulp
uamport 3990
uamallowed 192.168.182.1,203.134.232.20,203.134.232.35,203.134.232.3,203.134.239.153

# ee /usr/local/apache/cgi-bin/hotspotlogin.cgi
$uamsecret = "ht2eb8ej6s4et3rg1ulp";
$userpassword=1;

Uam secret pada chilli.conf dan hotspotlogin.cgi harus sama.
Untuk directory web saya terletak di /data dan saya create welcome.html disana dengan isi sbb :

Click Here For Login

Aktifkan ipnat di /etc/defaults/rc.conf kemudian tambahkan baris berikut di file konfigurasi ipnatnya.
# ee /etc/ipnat.rules
map rl0 192.168.182.0/24 -> 203.134.232.20/32

OK, jika sudah selesai semua, jalankan chillinya sbb :
# chilli --fg -c /etc/chilli.conf &
Hasil ifconfig sbb :

rl0: flags=8843 mtu 1500
options=8
inet 0.0.0.0 netmask 0xff000000 broadcast 0.255.255.255
inet6 fe80::20e:2eff:fecb:3cbb%rl0 prefixlen 64 scopeid 0x1
ether 00:0e:2e:cb:3c:bb
media: Ethernet autoselect (100baseTX )
status: active

xl0: flags=8843 mtu 1500
options=9
inet 203.134.232.20 netmask 0xffffffc0 broadcast 203.134.232.63
inet6 fe80::2b0:d0ff:fe4b:af9%xl0 prefixlen 64 scopeid 0x2
ether 00:b0:d0:4b:0a:f9
media: Ethernet autoselect (100baseTX )
status: active

tun0: flags=8051 mtu 1500
inet6 fe80::20e:2eff:fecb:3cbb%tun0 prefixlen 64 scopeid 0x4
inet 192.168.182.1 --> 192.168.182.1 netmask 0xffffff00
Opened by PID 42197

Selamat mencoba dan jangan menyerah ya.. saya juga butuh berhari-hari koq nguplek² ini dan alhamdulillah berhasil.. tapi akhirnya ngga dipakai... asem! :P

6 komentar:

pongpongen said...

Not big fan of *nix, nor Windows hehehe, sing penting sing menghasilkan good income whuahauhauaha.

Salut mbak postingannya, jarang** lho ada sampe ngoprex** *Nix sampe jauh gitu, apalagi jenis kelaminnya cewek huehueheuheuehue

Salam kenal,

ainoer said...

heheh.. seru² ngelu mas ngutek² *nix iki n asline yo karena tuntutan kerjoan seh..:P

kalo sehari² ya masih pake mikocok windows :P

Anonymous said...

jarang-jarang ada org network cewek..langka..
kerja dimana sekarng,mbak?
kayaknya kok kita sama2 di malang, cew,network jg..
tapi masih cupu.. haha..

Anonymous said...

maksutnya aku yg cupu :D

Anonymous said...

@winda

wah arema juga?
salam kenal mbak..

Anonymous said...

syed tentative indor boots adar warming yamuna krishna healthinfo drilled speaks
lolikneri havaqatsu