bab 4 rancangan usulan pengembangan sistem 4.1...
TRANSCRIPT
117
BAB 4
RANCANGAN USULAN PENGEMBANGAN SISTEM
4.1 Implementasi
Seperti yang telah dibahas pada bab sebelumnya, billing system di PT. Bonet
Utama saat ini sangatlah tidak menguntungkan bagi pelanggan yang hanya
menggunakan Internet untuk fasilitas email karena mereka akan membayar terlalu
mahal. Karena itulah dikembangkan sistem baru dimana pelanggan mendapat pilihan
mengenai biaya Internet ini. Dengan tetap menggunakan jaringan LAN, user harus
mendial server RADIUS terlebih dahulu agar mendapat hak akses ke dalam Internet.
Dial Up yang coba dikembangkan saat ini tidak menggunakan jalur telepon melainkan
melalui kabel UTP sehingga protokol yang digunakan adalah PPPoE (Point-to-Point
Protocol over Ethernet). Selain itu karena user sebelumnya dibatasi aksesnya hanya
dalam jaringan LAN dengan IP lokal, maka dibutuhkan sebuah router yang berfungsi
sebagai jembatan antara LAN dan WAN. RouterOS MikroTik versi 2.9.2 digunakan
sebagai penghubung kedua jaringan ini. Cara penginstalan MikroTik dan server
RADIUSakan dijelaskan pada subbab berikut. Dengan adanya server RADIUS ini user
yang membutuhkan akses internet yang cepat tidak perlu membayar mahal namun
mereka mempunyai pilihan untuk membayar sesuai pemakaian mereka saja. Contoh
paket yang ditawarkan misalnya saja adalah 15 jam akses untuk Rp. 45.000,- dengan
biaya sebesar Rp.4000,-/jam untuk setiap kelebihannya.
118
4.1.1 Instalasi MikroTik (RouterOS)
Pertama-tama akan disiapkan sebuah sebuah router. Diputuskan untuk
menggunakan PC router dengan Operating System MikroTik versi 2.9.2. Yang
digunakan dalam pengujian kali ini adalah MikroTik dalam bentuk hardware yang
disebut dengan Disk On Module (DOM) dan interface IDE (Integrated Drive
Electronics) seperti yang dapat dilihat pada gambar berikut:
Gambar 4.1 MikroTik dalam Bentuk DOM
Dengan Mikrotik, dapat dilakukan pembuatan firewall untuk jaringan,
pengaturan bandwidth untuk masing-masing client (bandwidth manajemen), proxy, dan
juga dapat dibuat secure tunnel, baik dengan IPsec, PPTP, maupun dengan L2TP.
Menurut situs resmi MikroTik Indonesia di www.mikrotik.co.id, harga sebuah DOM
tanpa lisensi yang dapat digunakan untuk Internet wireless (max.200 user) adalah
Rp.550.000,- tanpa lisensi dan Rp. 950.000,- bila dengan lisensi. Selain dalam bentuk
119
DOM juga bisa didapatkan RouterOS dalam bentuk installer yang dapat didownload
dari www.mikrotik.com namun bila dipilih cara ini, harus diinstal secara manual ke
dalam hard disk.
Langkah-langkah konfigurasi MikroTik antara lain:
1. Periksa apakah komputer yang akan digunakan (PC Router) telah memenuhi
persyaratan seperti : CPU dan motherboard yang digunakan adalah generasi
ke-4, generasi ke-5 (Intel Pentium, Cyrix 6X86, AMD K5 atau sebanding
dengannya) atau uniprosessor terbaru yang kompatibel dengan Intel IA-32
(i386); RAM – minimal 48 MB, maksimal 1 GB; direkomendasikan
menggunakan 64 MB atau lebih. Ethernet yang ada pada PC router juga
harus lebih dari satu, fungsinya antara lain satu interface untuk berhubungan
dengan zona Internet dan satu lagi untuk ke LAN.
2. Setelah memenuhi syarat sambungkan DOM dengan IDE pada motherboard
PC router tersebut.
3. Setelah DOM disambungkan, boot komputer dan akan muncul halaman login
beserta logo MikroTik pada konsole. Pertama kali, masukkan username dan
password..
4. Setelah login berhasil, akan muncul prompt seperti berikut ini.
Gambar 4.2 Halaman Login MikroTik
120
5. Langkah selanjutnya adalah mengeset IP untuk masing-masing interface
dengan command [admin@MikroTik] > setup, lalu ikuti petunjuk yang ada
untuk menset IP dan menset gateway atau routing untuk ether1 dan ether2
Gambar 4.3 Tampilan Dari Perintah “setup” Pada MikroTik
6. Setelah MikroTik berjalan maka dimiliki beberapa pilihan untuk mengakses
ke dalam konsole ini antara lain melalui telnet, SSH, WebBox (tampilan web
untuk konfigurasi MikroTik) atau juga WinBox (tampilan GUI di dalam
Windows OS untuk konfigurasi MikroTik). Caranya adalah dengan
mengetikkan alamat IP PC Router tersebut pada address bar sebuah web
browser. Setelah itu bila ingin menggunakan WinBox, klik terlebih dahulu
pada link download, save di komputer dan jalankan. Sedangkan bila ingin
menggunakan telnet, klik pada link connect with telnet untuk WebBox, bisa
langsung diisikan username dan password pada kolom WebBox Login di
sebelah kanan atas. Ini adalah salah satu kelebihan dari MikroTik yaitu dapat
diakses dari manapun dengan banyak pilihan.
121
Gambar 4.4 Halaman Awal Dari MikroTik
7. Untuk konfigurasi, dipilih menggunakan WinBox. Jalankan winbox.exe yang
telah didownload, lalu isikan informasi yang dibutuhkan seperti login dan
password dan klik Connect. Maka akan terbuka window kontrol utama
MikroTik tujuan. Seperti tampak pada gambar berikut :
122
Gambar 4.5 Tampilan Login Pada WinBox
Gambar 4.6 Tampilan Awal WinBox Setelah Login
123
8. Pastikan pada Interface List bahwa interface-interface network yang ada
sudah sesuai dengan mengklik pada tab interface di sebelah kiri paling atas.
9. Setelah itu periksa juga alamat IP pada interface pada tab Address List.
Gambar 4.7 IP Address List
IP 192.168.1.100 adalah alamat IP MikroTik yang akan menuju
internet gateway.
IP 192.168.2.1 adalah alamat IP MikroTik yang menuju jaringan
lokal dan sebagai DHCP Server.
IP 192.168.3.9 IP virtual bagi klien DHCP yang berfungsi sebagai
gateway dari jaringan LAN yang akan di-routing ke interface lokal
192.168.2.1
10. Pilih IP Pool. Setting Pool digunakan untuk mengatur jangkauan IP
Address yang akan dipinjamkan kepada komputer client yang melakukan
request, beri nama dengan “Pool RADIUS”. Pool ini akan berfungsi sebagai
124
alamat IP yang diberikan ketika user melakukan koneksi PPPoE. Selanjutnya
buat pool dengan nama DHCP LAN0X (dimana X adalah nomor urut dari
pool) sebagai alamat yang akan diberikan oleh DHCP Server pada klien
ketika ia terhubung dengan jaringan LAN PC Router. Hasil dari konfigurasi
IP Pool ini dapat dilihat pada Gambar 4.8. Pada Tab Used Addresses akan
muncul alamat IP yang telah digunakan oleh klien. Digunakan subnetting
dengan subnet mask 255.255.255.248. Maka dengan rumus 256 – 248, akan
terlihat subnet yang dapat diberikan kepada klien, yaitu angka kelipatan 8.
Dengan demikian daftar kelompok subnet yang tersedia adalah 8, 16, 24, 32,
40, 48, 56, 64, 72, 80, 88, 96, 104, 112, 120, 128, 136, 144, 152, 160, 168,
176, 184, 192, 200, 208, 216, 224, 232, dan 240. dengan tiap subnetnya akan
memiliki 6 host. Maka kelompok IP address yang dapat digunakan adalah :
o 192.168.3.9 sampai 192.168.3.14
o 192.168.3.17 sampai 192.168.3.22
o 192.168.3.25 sampai 192.168.3.30
o 192.168.3.33 sampai 192.168.3.38
o 192.168.3.41 sampai 192.168.3.46
o 192.168.3.49 sampai 192.168.3.54
o 192.168.3.57 sampai 192.168.3.62
o 192.168.3.65 sampai 192.168.3.70
o 192.168.3.73 sampai 192.168.3.78
o 192.168.3.81 sampai 192.168.3.86
o 192.168.3.89 sampai 192.168.3.94
o 192.168.3.97 sampai 192.168.3.102
125
o 192.168.3.105 sampai 192.168.3.110
o 192.168.3.113 sampai 192.168.3.118
o 192.168.3.121 sampai 192.168.3.126
o 192.168.3.129 sampai 192.168.3.134
o 192.168.3.137 sampai 192.168.3.142
o 192.168.3.145 sampai 192.168.3.150
o 192.168.3.153 sampai 192.168.3.158
o 192.168.3.161 sampai 192.168.3.166
o 192.168.3.169 sampai 192.168.3.174
o 192.168.3.177 sampai 192.168.3.182
o 192.168.3.185 sampai 192.168.3.190
o 192.168.3.193 sampai 192.168.3.198
o 192.168.3.201 sampai 192.168.3.206
o 192.168.3.209 sampai 192.168.3.214
o 192.168.3.217 sampai 192.168.3.222
o 192.168.3.225 sampai 192.168.3.230
o 192.168.3.233 sampai 192.168.3.238
o 192.168.3.241 sampai 192.168.3.246
Alasan digunakan subnet mask 255.255.255.248 adalah :
o Untuk alasan keamanan.
Dengan adanya pembagian subnet yang menjadikan hanya 6 IP address per
subnet akan memperkecil tingkat traffic broadcast yang dapat mengganggu
126
bandwidth koneksi PC klien lainnya, dan hanya akan terjadi pada kelompok
subnet itu saja.
o Untuk kemudahan monitoring jaringan.
Bila terjadi masalah dalam jaringan, ruang lingkup masalah tersebut dapat
diperkecil dengan melihat kelompok IP address yang terganggu.
Gambar 4.8 IP Pool Interface
127
11. Selanjutnya akan dibuat sebuah DHCP Server. Pilih IP, lalu DHCP Server.
Isi nama dari DHCP Server yang dibuat dan pilih jaringan mana yang akan
diberikan alamat IP melalui DHCP. Pada percobaan ini, jaringan yang
terhubung dengan LAN melalui interface lokal. Relay diisi bila akan
digunakan DHCP Relay Server. Lease Time berarti jangka waktu alamat IP
itu akan dipinjamkan kepada user, dan terakhir adalah address pool, pilih
DHCP LAN01 yang rentang alamat IPnya dimulai dari 192.168.3.9 hingga
192.168.3.14 sebagai alamat yang akan diberikan DHCP Server pada klien.
Gambar 4.9 Setting DHCP Server
12. Selanjutnya adalah mengkonfigurasikan informasi-informasi apa saja yang
akan diberikan oleh DHCP Server pada klien. Pilih IP DHCP Server, Tab
Network.
128
Gambar 4.10 DHCP Network
13. Untuk Setting PPP Profile ikuti petunjuk dibawah ini.
• Name: profile1
• Local Address: 192.168.2.1
• Remote Address: Pool RADIUS
Gambar 4.11 PPP Profile Interface
129
14. Setting PPP Secrets. Secret merupakan key yang digunakan untuk protokol
yang bersifat handshake seperti misalnya CHAP. Secret ini akan digunakan
dalam hubungannya dengan authentication pada RADIUS. Bila secret yang
ada di PC Router tidak sesuai dengan server RADIUS, maka user yang ingin
online tidak akan mendapat hak akses tersebut. Isikan secret atau kata kunci
yang akan RADIUS gunakan pada bagian Password dan pilih profile yang
sesuai dengan PPP Profile yang ingin digunakan..
Gambar 4.12 PPP Secret Interface
15. Setting PPPoE Server. Pilih PPP, Interfaces, lalu klik pada tulisan PPPoE
Server. Akan muncul sebuah window baru. Klik tanda ‘+’ dan isi parameter-
parameter yang dibutuhkan. Lihat Gambar 4.13 untuk lebih jelasnya.
130
Gambar 4.13 Setting PPPoE Server
16. Selanjutnya Pilih IP - Route untuk mengecek routing dari setiap interface.
Gambar 4.14 IP Route Interface
Keterangan A=Active, S=Static, D=Dynamic, C=Connected
131
17. Setting NAT (Network Address Translation) merupakan salah satu bagian
yang cukup penting. Karena user yang berada di jaringan LAN hanya
mendapat IP Lokal, untuk masuk ke dalam jaringan internet, user tersebut
membutuhkan IP Publik. Namun tidaklah mungkin untuk memberikan tiap
user sebuah IP Publik, karenanya dilakukan masquerade oleh MikroTik agar
setiap IP Lokal yang terhubung ke internet dianggap seolah-olah
menggunakan IP Publik dari MikroTik.
Gambar 4.15 Setting NAT Melalui WinBox
18. Bagian selanjutnya adalah setting RADIUS Server. Pilih tab RADIUS lalu
klik tanda “+”. Beri tanda check pada checkbox ppp dan dhcp. Lalu isikan IP
Address dari Server RADIUS dan secret key yang telah dibuat. Perhatikan
132
bahwa default port yang digunakan untuk autentikasi adalah 1812 sementara
Accounting menggunakan port 1813.
Gambar 4.16 RADIUS Server Interface pada MikroTik
4.1.2 Instalasi Apache sebagai Web Server
Untuk dapat membuat sebuah server berbasiskan web, dapat dipilih untuk
menggunakan Apache Web Server ataupun Internet Information Services (IIS) yang
berjalan pada sistem operasi Microsoft Windows Server. Pada penelitian kali ini,
Apache digunakan karena sistem operasi yang digunakan untuk menjadi server adalah
Linux Kubuntu.
133
Langkah-langkah instalasi Apache pada Linux melalui konsole adalah :
o Pada “root@freeRADIUS#” ketikkan “apt-get install apache”, perintah
ini akan secara otomatis mencari paket-paket yang dibutuhkan untuk instalasi
Apache dengan koneksi internet dan kemudian akan mem-prompt besar file
yang perlu didownload lalu meminta konfirmasi untuk melanjutkan instalasi.
Tekan “y” lalu tunggu sampai proses selesai dan cek apakah Apache telah
terinstall misalnya dengan mengetikkan :
root@freeRADIUS:~$ apache2 -v
Server version: Apache/2.0.53
Server built: Dec 5 2005 15:58:52
Bila Apache telah terinstall, maka perintah “apache2 –v” akan
mengembalikan versi dan tanggal pembuatan dari server Apache yang
digunakan.
4.1.3 Instalasi MySQL Sebagai Database Server
MySQL 4.0.23 diinstall pada sistem operasi Linux Kubuntu 5.04. Server MySQL
ini digunakan sebagai database server pada database RADIUS. Langkah-langkahnya
adalah sebagai berikut :
1. Pastikan paketnya sudah terdapat pada Kubuntu source list. Pilih tombol [K
Menu] - System - kynaptic (Package Manager).
2. Pilih Edit - Find atau dengan shortcut CTRL + F, lalu masukkan kata kunci
“mysql” (tanpa tanda kutip) pada kotak teks pencari. Lalu pada daftar hasil
pencarian, klik kanan dan pilih install pada masing-masing pilihan, yaitu
mysql-client, mysql-common, dan mysql-server. Ulangi langkah yang sama
134
untuk kata kunci “phpmyadmin”. Kemudian klik Close untuk keluar dari
window ‘Find Packages’.
3. Pilih icon ‘Commit changes to the system’ untuk segera menginstall
freeRADIUS secara otomatis. Tunggu proses download paket-paket yang
sudah dipilih dari Internet (http://id.archive.ubuntu.com) sampai selesai.
4. Bila instalasi berjalan dengan baik, maka lokasi MySQL dapat diketahui
dengan perintah sebagai berikut :
root@ubuntu:/etc/freeRADIUS # whereis mysql
mysql: /usr/bin/mysql /etc/mysql /usr/share/mysql
/usr/share/man/man1/mysql.1.gz
5. Pilih tombol [K Menu] - System - Konsole (Terminal Program) atau software
terminal yang lainnya. Kemudian jalankan perintah berikut mysql –uroot,
bila instalasi dan server MySQL sudah berjalan dengan baik, maka akan
menghasilkan output pada layar seperti berikut :
root@ubuntu:/ # mysql -uroot
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 244 to server version:
4.0.23_Debian-3ubuntu2.1-log
Type 'help;' or '\h' for help. Type '\c' to clear the
buffer.
mysql>
135
6. Buka browser seperti Konqueror, Internet Explorer, Opera, dsb. Kemudian
masukkan alamat IP tempat server MySQL dan phpMyAdmin (contoh :
http://192.168.1.200/phpmyadmin/), maka akan terbuka seperti berikut :
Gambar 4.17 Halaman Login phpMyAdmin
Klik “Login”, untuk secara otomatis masuk ke dalam menu utama
phpMyAdmin, seperti berikut :
Gambar 4.18 Halaman Awal phpMyAdmin
136
7. Untuk alasan keamanan, maka ubah password koneksi ke server MySQL
dengan memilih “Change password”, dipilih password skr1ps1bonet.
Dengan kombinasi angka dan huruf, serta jumlah karakter sebanyak 12, maka
cukup menyulitkan dan memperlama orang yang tidak berwenang untuk
mendapatkan password tersebut dengan teknik Brute Force.
Gambar 4.19 Tampilan Penggantian Password
8. Buat database RADIUS dan isikan dengan tabel-tabel, serta data-data yang
dibutuhkan. Berikut merupakan daftar tabel yang dibutuhkan :
Gambar 4.20 Daftar Tabel Database Pada MySQL
137
4.1.4 Instalasi FreeRADIUS sebagai server RADIUS
Untuk menginstall FreeRADIUS 1.0.1, maka dalam implementasinya digunakan
sistem operasi Linux Kubuntu 5.04, serta MySQL 4.0.23 sebagai database server.
Langkah-langkahnya adalah sebagai berikut :
1. Paket yang digunakan adalah freeradius, freeradius-mysql, dsb. Tetapi
cukup dengan menginstall freeradius-mysql maka paket-paket lainnya yang
berkaitan akan langsung terinstall secara otomatis. Server FreeRADIUS
dapat menggunakan MySQL untuk authentikasi pengguna dan mengerjakan
proses akunting, freeradius-mysql merupakan module MySQL untuk server
FreeRADIUS. Berikut ini merupakan informasi dari beberapa paket yang
akan dipergunakan.
Bila menggunakan freeradius :
root@freeradius:~# apt-cache show freeradius
Package: freeradius
Priority: optional
Section: universe/net
Installed-Size: 5280
Maintainer: Paul Hampson <[email protected]>
Architecture: i386
Version: 1.0.1-2
Replaces: radiusd-freeradius
Provides: radius-server
Depends: libc6 (>= 2.3.2.ds1-4), libgdbm3, libltdl3 (>= 1.5.2-
2), libpam0g (>= 0.76)
Suggests: freeradius-ldap, freeradius-mysql, freeradius-krb5
138
Conflicts: radiusd-freeradius, radiusd-freeradius-krb5,
radiusd-freeradius-ldap, radiusd-freeradius-postgresql,
radiusd-freeradius-mysql
Filename:pool/universe/f/freeradius/freeradius_1.0.1-_i386.deb
Size: 2003956
MD5sum: bbade84541b89c729317bc4f667b0584
Description: a high-performance and highly configurable RADIUS
server. A high-performance RADIUS server derived from
Cistron's server, and generally similar to Livingston's 2.0
server, with support for...
- many vendor-specific attributes
- proxying and replicating requests by any criteria
- authentication on system passwd, SQL, Kerberos, LDAP,
users file, or PAM
- multiple DEFAULT configurations
- regexp matching in string attributes and lots more.
Bugs: mailto:[email protected]
Origin: Ubuntu
Bila menggunakan freeradius-mysql :
root@freeradius:~# apt-cache show freeradius-mysql
Package: freeradius-mysql
Priority: optional
Section: universe/net
Installed-Size: 148
Maintainer: Paul Hampson <[email protected]>
Architecture: i386
Source: freeradius
Version: 1.0.1-2
139
Replaces: radiusd-freeradius-mysql
Depends: freeradius (= 1.0.1-2), libc6 (>= 2.3.2.ds1-4),
libmysqlclient10, zlib1g (>= 1:1.2.1)
Conflicts: radiusd-freeradius-mysql
Filename:pool/universe/f/freeradius/freeradius-mysql_1.0.1-
2_i386.deb
Size: 51090
MD5sum: 98066c42956af3bc860568741dfc9773
Description: MySQL module for FreeRADIUS server
The FreeRADIUS server can use MySQL to authenticate users and
do accounting, and this module is necessary for that.
Bugs: mailto:[email protected]
Origin: Ubuntu
2. Perintah yang digunakan untuk menginstall paket freeradius-mysql adalah :
root@freeradius# apt-get install freeradius-mysql
maka secara otomatis paket-paket yang berakitan dengan freeradius-mysql
akan terinstalasi ke dalam sistem.
3. Tunggu proses download dan instalasi paket tersebut dari Internet
(http://id.archive.ubuntu.com yang merupakan mirror dari server utama)
selesai.
4. Bila instalasi berjalan dengan baik, maka lokasi FreeRADIUS dapat
diketahui dengan perintah sebagai berikut :
root@ubuntu:/etc/freeRADIUS # whereis freeRADIUS
freeRADIUS: /usr/sbin/freeRADIUS /etc/freeRADIUS
/usr/lib/freeRADIUS /usr/share/freeRADIUS
/usr/share/man/man8/freeRADIUS.8.gz
140
Berikut ini merupakan lokasi utama dan umum dari FreeRADIUS
berdasarkan kategori :
Binaries :
/usr/sbin/freeRADIUS
Manual (man) pages :
/usr/local/man
Configuration files :
/etc/freeRADIUS
Log files :
/var/log/freeRADIUS
Untuk mengetahui lokasi instalasi FreeRADIUS menggunakan perintah apt-
get / Kynaptic secara lengkap dapat diketahui dengan mengetikkan perintah
berikut :
root@freeradius:/etc/freeRADIUS # dpkg -L freeRADIUS
/.
/etc
/etc/freeRADIUS
/etc/freeRADIUS/certs
/etc/freeRADIUS/certs/demoCA
/etc/freeRADIUS/certs/demoCA/cacert.pem
/etc/freeRADIUS/certs/demoCA/index.txt
/etc/freeRADIUS/certs/demoCA/index.txt.old
/etc/freeRADIUS/certs/demoCA/serial
/etc/freeRADIUS/certs/demoCA/serial.old
/etc/freeRADIUS/certs/README
/etc/freeRADIUS/certs/cert-clt.der
141
/etc/freeRADIUS/certs/cert-clt.p12
/etc/freeRADIUS/certs/cert-clt.pem
/etc/freeRADIUS/certs/cert-srv.der
/etc/freeRADIUS/certs/cert-srv.p12
/etc/freeRADIUS/certs/cert-srv.pem
/etc/freeRADIUS/certs/dh
/etc/freeRADIUS/certs/newcert.pem
/etc/freeRADIUS/certs/newreq.pem
/etc/freeRADIUS/certs/random
/etc/freeRADIUS/certs/root.der
/etc/freeRADIUS/certs/root.p12
/etc/freeRADIUS/certs/root.pem
/etc/freeRADIUS/acct_users
/etc/freeRADIUS/attrs
/etc/freeRADIUS/clients
dan seterusnya.
5. Masuk ke direktori /etc/freeradius/, lalu edit file clients.conf dengan cara
mengetik vi clients.conf (pada contoh ini digunakan Vi Improved”, tetapi
bisa menggunakan teks editor lainnya) dan masukkan alamat IP klien dari
RADIUS seperti berikut :
client 192.168.1.100/24
{
secret=testing123
shortname=private-network-3
}
142
Keterangan :
o client 192.168.1.100/24 merupakan alamat IP dari PC Router
MikroTik. Setiap klien pada jaringan LAN, akan melewati interface
lokal PC Router (192.168.2.1) sebelum diteruskan menuju interface
publik / internet (192.168.1.100) yang kemudian diteruskan kepada
RADIUS. Karena itulah PC Router ini disebut sebagai klien dari
server RADIUS.
o secret=testing123 merupakan secrets (password) yang unik yang
digunakan agar server RADIUS dan klien RADIUS dapat
berkomunikasi.
o shortname=private-network-3 merupakan nama singkat yang
digunakan sebagai label saja. Tidak ada ketentuan khusus dalam
pemberian shortname , biasanya diberikan nama yang mudah diingat
agar mudah dalam manajemennya..
6. Edit file /etc/freeradius/naslist, lalu masukkan alamat naslist yang ada sesuai
pada jaringan, yakni seperti berikut :
# NAS Name Short Name Type #---------------- ---------- ----
localhost local portslave
192.168.1.100 publik portslave
Daftarkan nama-nama resmi dari setiap NAS yang berhubungan dengan
server FreeRADIUS, nama singkatnya, dan tipe dari NAS tersebut.
143
7. Edit file /etc/freeradius/sql.conf, lalu masukkan tipe database yang akan
digunakan, konfigurasi koneksi ke database server, dan database RADIUS.,
yakni seperti berikut :
# Database type
# Current supported are: rlm_sql_mysql,
rlm_sql_postgresql,
# rlm_sql_iodbc, rlm_sql_oracle, rlm_sql_unixodbc,
rlm_sql_freetds
driver = "rlm_sql_mysql"
# Connect info
server = "localhost"
login = "root"
password = "skr1ps1bonet"
# Database table configuration
RADIUS_db = "RADIUS"
o Set driver = "rlm_sql_mysql", karena digunakan MySQL.
o Sesuaikan informasi server = "localhost", login = "root”, dan
password = "skr1ps1bonet" yang akan digunakan untuk
melakukan koneksi ke server MySQL.
o Sesuaikan database RADIUS yang akan digunakan pada
RADIUS_db = "RADIUS". Pastikan database RADIUS sudah
dibuat pada server MySQL dan sudah berisi tabel-tabel yang
dibutuhkan, beserta data-datanya.
144
8. Edit file /etc/freeradius/radiusd.conf,.lalu hilangkan tanda “#” (komentar)
pada bagian sql di sub-module authorize dan accounting seperti berikut :
authorize {
preprocess
# counter
# attr_filter
# eap
suffix
sql => tidak ada tanda #
files
# mschap
}
accounting {
acct_unique
detail
#counter
unix
sql => tidak ada tanda #
radutmp
#sradutmp
}
9. Jalankan FreeRADIUS dengan mengetik freeradius pada konsole atau dalam
mode debug dengan perintah freeradius –X. Bila menggunakan mode debug,
maka dapat diketahui cara kerja dari freeradius, variabel-variabel yang
dikirimkan, error yang terjadi, dsb. Berikut ini merupakan contoh ketika
145
server FreeRADIUS menerima request dari komputer klien (User-Name :
skripsi dan Password : 123)
rad_recv: Access-Request packet from host 192.168.1.100:1027,
id=52, length=188
Service-Type = Framed-User
Framed-Protocol = PPP
NAS-Port = 29
NAS-Port-Type = Ethernet
User-Name = "skripsi"
Calling-Station-Id = "00:0D:87:C7:13:81"
Called-Station-Id = "radius"
NAS-Port-Id = "Internet"
MS-CHAP-Challenge = 0x3a7c91d937ea09680d1a87921d0a7fb8
MS-CHAP2-Response =
0x0100ab55963e2608cf08c0616cedbe9e4f1700000000000000002541a041
67b9c03fc138b3a1a0f010fe8de27baf79c58dae
NAS-Identifier = "MikroTik"
NAS-IP-Address = 192.168.1.100
Processing the authorize section of radiusd.conf
modcall: entering group authorize for request 4
modcall[authorize]:module "preprocess" returns ok for request4
modcall[authorize]: module "chap" returns noop for request 4
rlm_mschap: Found MS-CHAP attributes. Setting 'Auth-Type =
MS-CHAP'
modcall[authorize]: module "mschap" returns ok for request 4
rlm_realm: No '@' in User-Name = "skripsi", looking up realm
NULL
rlm_realm: No such realm "NULL"
146
modcall[authorize]: module "suffix" returns noop for request 4
rlm_eap: No EAP-Message, not doing EAP
modcall[authorize]: module "eap" returns noop for request 4
users: Matched DEFAULT at 152
users: Matched DEFAULT at 171
users: Matched DEFAULT at 183
modcall[authorize]: module "files" returns ok for request 4
radius_xlat: 'skripsi'
rlm_sql (sql): sql_set_user escaped user --> 'skripsi'
radius_xlat: 'SELECT id,UserName,Attribute,Value,op FROM
radcheck WHERE Username = 'skripsi' ORDER BY id'
rlm_sql (sql): Reserving sql socket id: 0
radius_xlat: 'SELECT radgroupcheck.id, radgroupcheck.GroupName
,radgroupcheck.Attribute,radgroupcheck.Value,radgroupcheck.op
FROM radgroupcheck ,usergroup WHERE usergroup.Username =
'skripsi' AND usergroup.GroupName = radgroupcheck.GroupName
ORDER BY radgroupcheck.id'
radius_xlat:'SELECT id,UserName,Attribute,Value,op FROM
radreply WHERE Username = 'skripsi' ORDER BY id'
radius_xlat:'SELECT radgroupreply.id, radgroupreply.GroupName,
radgroupreply.Attribute,radgroupreply.Value,radgroupreply.op
FROM radgroupreply,usergroup WHERE usergroup.Username =
'skripsi' AND usergroup.GroupName = radgroupreply.GroupName
ORDER BY radgroupreply.id'
rlm_sql (sql): Released sql socket id: 0
modcall[authorize]: module "sql" returns ok for request 4
modcall: group authorize returns ok for request 4
rad_check_password: Found Auth-Type MS-CHAP
auth: type "MS-CHAP"
147
Processing the authenticate section of radiusd.conf
modcall: entering group Auth-Type for request 4
rlm_mschap: Told to do MS-CHAPv2 for skripsi with NT-Password
rlm_mschap: adding MS-CHAPv2 MPPE keys
modcall[authenticate]:module "mschap" returns ok for request 4
modcall: group Auth-Type returns ok for request 4
Sending Access-Accept of id 52 to 192.168.1.100:1027
Framed-IP-Address = 255.255.255.254
Framed-MTU = 576
Service-Type = Framed-User
Framed-Protocol = PPP
Framed-Compression = Van-Jacobson-TCP-IP
MS-CHAP2-Success =
0x01533d353438344444453034334243444343413635333945313338354232
45453946353645424544313533
MS-MPPE-Recv-Key = 0xf66a4bf12013bbd61b02e1d5fb75228e
MS-MPPE-Send-Key = 0x795beb0c5b32b766990c8e4f170b1ca3
MS-MPPE-Encryption-Policy = 0x00000001
MS-MPPE-Encryption-Types = 0x00000006
Finished request 4
Going to the next request
--- Walking the entire request list ---
Waking up in 6 seconds...
rad_recv: Accounting-Request packet from host
192.168.1.100:1027, id=53, length=140
Service-Type = Framed-User
Framed-Protocol = PPP
NAS-Port = 29
NAS-Port-Type = Ethernet
148
User-Name = "skripsi"
Calling-Station-Id = "00:0D:87:C7:13:81"
Called-Station-Id = "radius"
NAS-Port-Id = "Internet"
Acct-Session-Id = "81700000"
Framed-IP-Address = 192.168.5.253
Acct-Authentic = RADIUS
Acct-Status-Type = Start
NAS-Identifier = "MikroTik"
NAS-IP-Address = 192.168.1.100
Acct-Delay-Time = 0
Processing the preacct section of radiusd.conf
modcall: entering group preacct for request 5
modcall[preacct]:module "preprocess"returns noop for request 5
rlm_acct_unique: Hashing 'NAS-Port = 29,Client-IP-Address =
192.168.1.100,NAS-IP-Address = 192.168.1.100,Acct-Session-Id =
"81700000",User-Name = "skripsi"'
rlm_acct_unique: Acct-Unique-Session-ID = "28e79ab660c75e22".
modcall[preacct]:module "acct_unique" returns ok for request 5
rlm_realm: No '@' in User-Name = "skripsi", looking up realm
NULL
rlm_realm: No such realm "NULL"
modcall[preacct]: module "suffix" returns noop for request 5
modcall[preacct]: module "files" returns noop for request 5
modcall: group preacct returns ok for request 5
Processing the accounting section of radiusd.conf
modcall: entering group accounting for request 5
radius_xlat:
'/var/log/freeradius/radacct/192.168.1.100/detail-20060109'
149
rlm_detail: /var/log/freeradius/radacct/%{Client-IP-
Address}/detail-%Y%m%d expands to /var/log/freeradius/radacct/
192.168.1.100/detail-20060109
modcall[accounting]: module "detail" returns ok for request 5
modcall[accounting]: module "unix" returns ok for request 5
radius_xlat: '/var/log/freeradius/radutmp'
radius_xlat: 'skripsi'
modcall[accounting]: module "radutmp" returns ok for request 5
radius_xlat: 'skripsi'
rlm_sql (sql): sql_set_user escaped user --> 'skripsi'
radius_xlat: 'INSERT into radacct (AcctSessionId,
AcctUniqueId, UserName, Realm, NASIPAddress, NASPortId,
NASPortType, AcctStartTime, AcctStopTime, AcctSessionTime,
AcctAuthentic, ConnectInfo_start, ConnectInfo_stop,
AcctInputOctets, AcctOutputOctets, CalledStationId,
CallingStationId, AcctTerminateCause, ServiceType,
FramedProtocol, FramedIPAddress, AcctStartDelay,
AcctStopDelay) values('81700000', '28e79ab660c75e22',
'skripsi', '', '192.168.1.100', '29', 'Ethernet', '2006-01-09
22:20:54', '0', '0', 'RADIUS', '', '', '0', '0', 'radius',
'00:0D:87:C7:13:81', '', 'Framed-User', 'PPP',
'192.168.5.253', '0', '0')'
rlm_sql (sql): Reserving sql socket id: 4
rlm_sql (sql): Released sql socket id: 4
modcall[accounting]: module "sql" returns ok for request 5
modcall: group accounting returns ok for request 5
Sending Accounting-Response of id 53 to 192.168.1.100:1027
Finished request 5
Going to the next request
150
Waking up in 6 seconds...
--- Walking the entire request list ---
Cleaning up request 4 ID 52 with timestamp 43c27f56
Cleaning up request 5 ID 53 with timestamp 43c27f56
Nothing to do. Sleeping until we see a request.
10. Atribut pada database radius di server MySQL
Untuk me-reject (suspended) user karena alasan tertentu seperti tidak
membayar tagihan, melanggar aturan-aturan yang ada pada ISP, dsb dapat
dilakukan dengan cara :
Pastikan pada tabel radgroupcheck terdapat
id GroupName Attribute op Value
1 Suspended Auth-Type := Reject
Suspended merupakan nama group yang akan dipergunakan untuk
mengelompokkan user-user yang akan di-reject, sehingga user
tersebut tidak dapat mengakses internet.
Pastikan pada tabel usergroup User-Name yang ingin dimasukkan ke
dalam grup Suspended telah di set GroupNamenya menjadi
Suspended.
id UserName GroupName
3 Bgrossman Suspended
Berikut ini pada tabel radgroupreply merupakan cara untuk
mengirimkan pesan kepada user tersebut apabila di-reject
id GroupName Attribute op Value prio
151
40 Suspended Reply-Message := Account suspended for
late payment. 0
11. Untuk memeriksa apakah server FreeRADIUS telah terinstalasi berjalan
dengan benar, digunakan utility seperti berikut :
o NTRadPing 1.5 yang dapat di-download secara gratis di situs
http://www.novell.com/coolsolutions/tools/14377.html
Gambar 4.21 Tampilan NTRadPing
Pastikan konfigurasi koneksi ke server FreeRADIUS sudah benar,
lalu diuji dengan User Name : Jhassell dan Password : changeme
(User Name dan Password tersebut sudah didaftarkan pada database
RADIUS di server MySQL), kemudian klik tombol Send dan pada
kotak ‘RADIUS Server reply’ akan didapatkan hasil pengujian
tersebut.
o Yang kedua adalah dengan menggunakan perintah radtest pada
terminal Linux. Bentuk umum dari perintah ini adalah :
152
radtest user passwd RADIUS-server[:port] nas-port-number
secret [ppphint] [nasname]
4.1.5 Melakukan Kontrol Bandwidth dengan PC Router MikroTik
Setelah klien dapat terhubung melalui koneksi PPPoE ini, hal selanjutnya adalah
membatasi penggunaan bandwidth. Mengapa perlu dilakukan pembatasan penggunaan
bandwidth? Dengan melakukan pengaturan bandwidth, tiap user akan mendapatkan
besar bandwidth yang sama terlepas dari apapun yang user lain lakukan. Cara
melakukan pengontrolan bandwidth ini pada MikroTik antara lain :
1) Pilih IP Firewall, tab Mangle. Di bagian ini, akan dilakukan penandaan
(mark) pada koneksi dari user dan paket yang berasal dari komputernya. Hal
ini perlu dilakukan mengingat setiap user dapat memiliki alamat IP yang
berbeda setiap kali melakukan dial-up karena pemberian alamat IP sistem saat
ini menggunakan DHCP Server. Langkah pertama pada tab General, pilih
prerouting pada chain dan untuk sementara field lain dikosongkan terlebih
dahulu. Pilih tab Advanced lalu isikan 192.168.5.1-192.168.5.253 (Pool
RADIUS) pada kolom Src. Address Listnya. Pada tab Action isi seperti gambar
berikut :
153
Gambar 4.22 Setting Mangle Untuk Mark-Connection
Setting yang sama juga dilakukan untuk packet-mark bedanya hanya pada Tab
General tidak ada Src. Address yang diisikan dan pada tab Action diisikan mark
packet serta berikan nama client_packet. Untuk lebih jelasnya dapat dilihat pada
Gambar 4.23.
154
Gambar 4.23 Setting Mangle untuk Mark-Packet
2) Setelah setting mangle selesai, akan digunakan queue tree untuk pengaturan
bandwidthnya. Pilih Queues, lalu pilih Queue Tree.
Gambar 4.24 Setting Queue Tree Untuk Pembatasan Kecepatan Download
155
Gambar 4.25 Setting Queue Tree Untuk Pembatasan Kecepatan Upload
Berdasarkan cara diatas, user yang terhubung dengan MikroTik akan
mendapatkan bandwidth sebesar ± 8 hingga 12 KiloBytes/second (64000 sampai
96000 bits/second) sesuai dengan yang ditentukan pada Limit At dan Max Limit.
Tabel 4.1 Daftar Istilah Pada Queue Tree
Burst limit (integer) Merupakan batas tingkat data yang dapat dicapai
pada waktu burst aktif.
Burst threshold(integer) Digunakan untuk mengitung dan mengijinkan burst.
Bila rata-rata data rate pada burst time, kurang dari
burst threshold, data rate saat itu dapat mencapat
batas burst limit
Burst time (time) Digunakan untuk kalkulasi data rate rata-rata
156
Flow (text) Merupakan packet flow yang telah ditandai di /ip
firewall mangle. Parameter queue hanya akan
diaplikasikan pada paket yang ditandai dengan
tanda tersebut.
Limit at (integer) Merupakan batas terkecil dari data rate yang akan
didapat oleh klien.
Max limit (integer) Merupakan batas maksimal dari data rate yang
dapat dicapai oleh klien selama tersedia cukup
bandwidth.
Name (text) Nama dari queue
Parent Nama dari parent queue. Parent paling atas adalah
interface yang ada (sebenarnya HTB utama). Parent
yang berlevel lebih rendah dapat berupa queue
lainnya. Terdapat 3 pilihan, yaitu global-in
(mewakili segala traffic yang masuk pada ethernet),
global-out (mewakili segala traffic yang keluar
pada ethernet), global-total (mewakili semua data
baik yang melalui router).
Priority (integer 1..8 ) Prioritas dari queue. 1 tertinggi, dan 8 terendah.
Queue (text) Nama dari tipe queue
157
4.1.6 Langkah-Langkah Membuat Koneksi Dial-Up pada Klien
Untuk melakukan koneksi ke server RADIUS, pertama-tama dibuat koneksi dial-
up pada komputer klien. Langkah-langkah adalah sebagai berikut :
1. Klik tab Start pilih (Setting), Control Panel lalu klik Network Connection.
Langkah selanjutnya adalah meng-klik Create a new connection yang ada di
sebelah kiri atas. Klik Next dan akan muncul Window seperti ini. Pilih
pilihan Connect to the Internet dan klik Next >
Gambar 4.26 Langkah Awal Mengeset Koneksi Dialup
2. Langkah selanjutnya adalah memilih untuk menset koneksi secara manual
dengan mengklik bullet Set my connection manually. Tekan Next > untuk
melanjutkan.
158
Gambar 4.27 Mengeset Koneksi Dialup Secara Manual
3. Setelah muncul Window seperti berikut, pilih pilihan yang menandakan
bahwa akan digunakan protokol PPPoE.
Gambar 4.28 Memastikan Penggunaan PPPoE Sebagai Protokol Dial-Up
159
4. Selanjutnya masukkan nama ISP yang akan di dial.
Gambar 4.29 Memasukkan Nama ISP Yang Akan di Dial
5. Masukkan User name dan Password yang telah di daftarkan pada database
RADIUS di MySQL server.
Gambar 4.30 Form Account Information
160
6. Setelah selesai, klik Finish lalu klik kanan pada koneksi yang bernama Bonet
dari Network Connections dan pilih Properties. Pada tab General, isikan
‘Service name’ dengan radius (atau disesuaikan dengan setting pada PPPoE
Server MikroTik).
Gambar 4.31 Mengisi Service Name Yang Digunakan Oleh ISP
7. Selanjutnya pada Tab Security klik bullet Advanced, lalu konfigurasi
mengikuti protokol yang digunakan di RADIUS yaitu menggunakan PAP,
CHAP, dan MS-CHAP (v1 dan v2). Setelah memberi tanda check pada
protokol yang digunakan dan menghilangkan tanda check pada protokol yang
tidak digunakan, kemudian klik tombol OK. Sebagai tambahan, protokol
PAP tidaklah direkomendasikan karena data yang dikirim menggunakan PAP
tidak dienkripsi. Namun karena saat ini ruang lingkupnya hanya penelitian,
maka hal tersebut dirasa tidaklah terlalu penting.
161
Gambar 4.32 Setting Properti pada Security
8. Terakhir harus dipastikan bahwa dial dilakukan dengan menggunakan
PPPoE. Caranya adalah dengan memilih tab Networking
Gambar 4.33 Memastikan PPPoE telah digunakan
162
9. Setelah semua setting selesai, koneksi ini dapat segera digunakan dengan
cara meng-klik tombol Connect pada dial-up dialog box. Bila berhasil maka
akan muncul pemberitahuan seperti berikut di sebelah kanan bawah desktop
klien.
Gambar 4.34 Pemberitahuan Koneksi Berhasil
10. Bila koneksi PPPoE telah berhasil, maka bila diperiksa pada komputer klien,
akan terdapat dua buah alamat IP seperti berikut :
Gambar 4.35 Hasil dari Perintah ipconfig/all Pada Komputer Klien
163
4.1.7 Tindakan Pengamanan Pada Komputer Klien
Untuk mengamankan komputer klien dari berbagai serangan, seperti virus,
worm, spyware, adware, dan trojan dapat dilakukan beberapa antisipasi seperti berikut :
o Secara berkala lakukan proses update terhadap keamanan sistem operasi
yang digunakan oleh klien.
Pada sistem operasi Microsoft Windows dapat dipantau informasi tentang
masalah keamanan di http://www.microsoft.com/security/default.mspx,
contoh : Microsoft Windows Service Pack (Microsoft Windows XP
Service Pack 2), dsb.
Untuk sistem operasi Macintosh dapat dipantau informasi tentang
masalah keamanan di http://www.securemac.com/.
Untuk sistem operasi Linux dapat dipantau informasi tentang masalah
keamanan di http://security.linux.com/. Dapat disesuaikan lebih spesifik
untuk masing-masing distro yang ada.
Selain website-website diatas, masalah keamanan juga dapat dipantau
dari berbagai forum dan mailing list.
o Install dan gunakan software Anti Virus untuk mencegah penularan virus,
worm, trojan, dsb ke komputer klien. Pastikan daftar definisi virus untuk
Anti Virus tersebut selalu terupdate secara berkala dengan memantau website
pembuat software Anti Virus tersebut. Amankan juga komputer klien dari
spyware dan berbagai ancaman yang tidak diinginkan dengan menggunakan
software seperti:
164
Microsoft AntiSpyware
(www.microsoft.com/athome/security/spyware/software/default.mspx)
Ad-Aware (http://www.lavasoftusa.com/software/adaware/)
Spybot-Search&Destroy
(http://www.safer-networking.org/en/spybotsd/index.html)
o Gunakan utility seperti ZoneAlarm (http://www.zonelabs.com) untuk
mengantisipasi akses masuk ke dalam sistem komputer klien dari orang yang
tidak berwenang.
o Gunakan utility seperti nmap (http://www.insecure.org/nmap/) untuk
mengetahui lubang keamanan pada sistem operasi komputer klien. Nmap
merupakan software port scanning gratis yang didistribusikan oleh
Insecure.Org dan di desain untuk mendeteksi port-port yang terbuka pada
komputer target, menentukan service apa saja yang berjalan pada port-port
tersebut dan mengetahui pada sistem operasi komputernya (teknik ini dikenal
sebagai fingerprinting). Nmap menjadi salah satu software wajib untuk
peralatan network administrator dan digunakan untuk menganalisa suatu
percobaan dan keamanan komputer secara umum.
o Gunakan software-software yang aman dan sudah umum dipakai oleh banyak
orang pada PC Desktop dengan sistem operasi Microsoft Windows, berikut
ini adalah contohnya :
Browser
Mozilla FireFox (http://www.mozilla.com/firefox/)
Opera (http://www.opera.com)
Konqueror (http://www.konqueror.org/)
165
E-Mail client
TheBat (http://www.ritlabs.com/en/products/thebat/)
Thunderbird (http://www.mozilla.com/thunderbird/)
Eudora (http://www.eudora.com)
Dan sebagainya.
4.1.8 Manajemen Pengamanan Pada Sistem Yang Baru
Untuk pengamanan dari sistem yang sedang berjalan, dilakukan beberapa hal
seperti misalnya :
Melakukan penggantian password pada semua sistem (Apache Server,
MySQL, Linux Kubuntu, FreeRADIUS, dan MikroTIk) yang digunakan
dengan password yang telah memenuhi standar keamanan yaitu terdiri
lebih dari 8 karakter, dan merupakan gabungan dari huruf alfabet dan angka
numerik.
Memeriksa dan menutup celah keamanan yang terdapat pada sistem
komputer server dan PC Router dengan utility seperti nmap, seperti
dibawah ini :
Memeriksa celah keamanan yang terdapat pada PC Router dengan
RouterOS MikroTik.
root@freeradius:~# nmap 192.168.1.100
Starting nmap 3.75 ( http://www.insecure.org/nmap/ )
at 2006-01-11 03:05 WIT
Interesting ports on 192.168.1.100:
(The 1657 ports scanned but not shown below are in
state: closed)
166
PORT STATE SERVICE
21/tcp open ftp
22/tcp open ssh
80/tcp open http
1720/tcp open H.323/Q.931
2000/tcp open callbook
3986/tcp open mapper-ws_ethd
MAC Address: 4C:00:10:50:8F:5D (Unknown)
Nmap run completed -- 1 IP address (1 host up)
scanned in 0.531 seconds
Memeriksa celah keamanan yang terdapat pada server
FreeRADIUS.
root@freeradius:~# nmap 192.168.1.200
Starting nmap 3.75 ( http://www.insecure.org/nmap/ )
at 2006-01-11 03:15 WIT
Interesting ports on freeradius (192.168.1.200):
(The 1661 ports scanned but not shown below are in
state: closed)
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
Nmap run completed -- 1 IP address (1 host up)
scanned in 0.243 seconds
Untuk mencegah masuknya user yang tidak memiliki hak akses ke dalam
konsole atau WinBox MikroTik, maka hal yang harus dilakukan adalah
masuk ke direktori “/ip firewall filter” dari konsole MikroTik lalu ketikkan
perintah berikut untuk membuat rule-nya:
167
i. add chain=input connection-state=invalid action=drop\
comment="Drop Invalid connections"
ii. add chain=input connection-state=established
action=accept \
comment="Allow Established connections"
iii. add chain=input protocol=udp action=accept \
//isi action dengan reject untuk menolak koneksi UDP
comment="Allow UDP"
iv. add chain=input protocol=icmp action=accept \
//isi action dengan reject untuk menolak koneksi ICMP
comment="Allow ICMP"
v. add chain=input src-address=192.168.1.1/24
action=accept \
//dalam percobaan ini, hanya IP atau src-address =
192.168.1.1 yang hanya boleh mengakses Router /
MikroTik
vi. add chain=input action=drop
comment="Drop anything else"
Setelah konfigurasi selesai, maka user selain komputer dengan alamat IP
192.168.1.1/24 tidak akan dapat mengakses router MikroTik dan juga
setiap koneksi yang invalid, misalnya username atau password yang salah
tidak akan dirouting oleh MikroTik, melainkan langsung di-drop.
Untuk keamanan jaringan nirkabel, diimplementasikan penggunaan WEP
pada Access Point Compex WPE54G sebagai Access Point Bridge dengan
alamat IP 192.168.1.150. WEP akan mengenkripsi setiap transmisi yang
melalui jaringan nirkabel, dari permintaan alamat IP sampai isi file yang
mungkin didownload dengan download manager.
168
Gambar 4.36 Halaman Awal Dari Manajemen AP Compex WPE54G
WEP 128-bit berarti akan melakukan enkripsi yang terdiri dari 13 karakter
alphanumerik dan 26 hexadesimal.
Gambar 4.37 Pengaturan WEP Pada WLAN Setup - Security
169
Gambar 4.38 Setting WEP Pada Access Point
Namun meng-enable WEP tidaklah cukup melindungi jaringan. Harus
diperhatikan bahwa kode WEP tersebut cukup teracak. Karena kode WEP
128-bit sulit diingat, banyak orang menggunakan rangkaian yang sederhana
agar mudah diingat. Ini merupakan hal yang buruk; kode WEP yang tidak
acak sangat mudah untuk ditebak dan didekripsi. Untuk membuat kode
WEP yang benar-benar acak, lebih baik dicampur huruf dan angka acak
pada keyboard. Sebagai cara lain, dapat juga menggunakan pembuat angka
acak dengan tingkat keamanan yang dapat dipilih tersedia di
www.download.com.
Salah satu teknik utama yang digunakan penyusup untuk membobol
enkripsi pada WEP adalah dengan mengirim sejumlah data yang sangat
besar ke jaringan nirkabel, kemudian menggunakan traffic tersebut untuk
170
mengintai WEP jaringan. Dengan mengirim jutaan ping ke komputer
nirkabel, mereka bisa membuat traffic yang cukup untuk membobol
beberapa WEP.
Namun, jika para penyusup itu tidak dapat terhubung ke komputer
nirkabel dari Internet, yang dapat mereka lakukan hanyalah mengintip
traffic harian. Ini membutuhkan waktu yang lebih lama. Maka disarankan
agar komputer nirkabel yang digunakan mempunyai alamat IP lokal / privat
yang tidak dapat diakses dari jaringan lain. Biasanya IP lokal dimulai
dengan 192.168.x.x atau 10.15.x.x
Koneksi dari komputer yang tidak diizinkan pada jaringan nirkabel
juga sebaiknya dicegah dengan membatasi alamat MAC. Karena alamat
MAC merupakan tanda pengenal yang unik yang akan digunakan pada
komputer klien atau mereka yang mendapat izin untuk terkoneksi pada
jaringan nirkabel. Secara manual dibatasi koneksi dari access point dengan
menggunakan alamat MAC yang dikenal untuk diizinkan terhubung ke
jaringan nirkabel. Sehingga akan mempersulit seseorang untuk dapat
menyusup.
171
Gambar 4.39 Pembatasan Alamat MAC Pada Access Point
Mengganti kode WEP secara teratur juga akan mencegah seseorang
mengumpulkan data yang cukup untuk “membobol” kode enkripsi WEP.
Sebagai saran adalah mengganti enkripsi satu atau dua kali dalam satu
bulan.
4.1.9 Billing System
Billing system yang dirancang ini merupakan billing system pertama yang
digunakan oleh PT. Bonet Utama karena selama ini ditetapkan biaya yang flat bagi
seluruh penggunanya, dan untuk pencatatan tagihan tersebut masih dilakukan secara
manual.
Untuk tampilan billing bagi para user, dibuat sebuah halaman web menggunakan
bahasa pemrograman PHP dengan database MySQL.
172
Gambar 4.40 Rancangan Halaman Login Website Billing System PT. Bonet Utama
Setelah klien memasukkan username serta password dengan benar, maka
klien akan dapat melihat layanan apa saja yang terdapat pada website billing ini.
Menu navigasi pertama, adalah halaman “home”, disini para klien bisa
mendapatkan berita-berita apa saja yang aktual, mengenai PT. Bonet Utama
maupun seputar Bogor serta kata sambutan dari pihak PT Bonet Utama.
173
Gambar 4.41 Rancangan Halaman Setelah User Login
Klien nantinya juga akan dapat melihat berapa harga yang harus dibayarkan
dikarenakan penggunaan internetnya dengan membuka halaman “mybilling”. Pada
halaman ini klien dapat melihat biaya pemakaiannya pada bulan dan tahun tertentu
sesuai dengan yang ingin dilihatnya, yang nantinya akan diatur bulan yang sedang
berjalan serta tahun yang sedang berjalan saat ini. Lama pemakaian serta besar paket
yang dikirim dan diterima juga akan dijumlahkan untuk memperjelas dalam perhitungan
dan perincian biaya pemakaian internet. Pada halaman ini juga terdapat tabel InZone dan
outZone yang menunjukkan berapa lama klien tersebut terhubung internet pada zona
waktu yang terdapat harga diskon dan zona waktu yang tidak terdapat harga diskon dan
yang nantinya akan mempengaruhi dalam total biaya.
174
Gambar 4.42 Rancangan Halaman “MyBilling”
Selanjutnya pada halaman “myprofile” akan muncul profil klien sesuai dengan
yang diisikan pada saat pendaftaran pertama pada PT. Bonet Utama. Profil tersebut akan
dapat diubah seperti alamat e-mail, department, telepon dan handphone, serta password.
Namun untuk ID, User name serta Nama tidak dapat diganti kecuali bertindak sebagai
administrator.
175
Gambar 4.43 Rancangan Halaman “MyProfile”
Apa bila terdapat ketidakjelasan terhadap PT Bonet Utama dan mengenai web
billing system tersebut, pengguna dapat melihat pada halaman “help” yang telah berisi
daftar pernyataan yang paling sering diajukan beserta jawabannya yang secara lengkap.
Namun apabila daftar pertanyaan dari klien tidak terdapat pada halaman tersebut, di
halaman itu juga terdapat nomor telepon customer service yang selalu siap membantu.
Bentuk rancangan halaman “help” yang dibuat dapat dilihat pada gambar 4.39 di bawah
ini.
176
Gambar 4.44 Rancangan Halaman “Help”
Terakhir adalah halaman “contact” yang berisi alamat lengkap PT. Bonet Utama
serta terdapat link address email perdivisi, sehingga klien dapat mengirimkan email atau
mengkontak tiap divisi yang terdapat pada PT Bonet Utama bila menemui suatu masalah
yang berkaitan dengan divisi tersebut. Dan pada website billing system ini juga
disediakan navigasi untuk logout sehingga terlepas dari sistem login dan tidak dapat
diakses oleh orang lain, karena untuk login lagi dibutuhkan username dan password
yang cocok dengan yang terdapat pada database server.
177
Gambar 4.45 Rancangan Halaman “Contact” & “Logout”
4.2 Uji Performance
Selain itu, juga diimplementasikan Multi Router Traffic Grapher (MRTG) ke
dalam sistem ini. Dengan MRTG, admin dapat memantau jalannya lalu lintas jaringan
melalui sebuah halaman web. Trafik jaringan akan digambarkan dalam bentuk grafik
yang dapat diset sesuai dengan keinginan dan kebutuhan dari pihak admin. Selain itu,
grafik yang dihasilkan MRTG ini juga dapat menjadi jaminan bagi user bahwa mereka
mendapatkan besar bandwidth yang sesuai. Langkah-langkah instalasi MRTG antara
lain :
l. Download terlebih dahulu MRTGnya dengan menggunakan perintah
root@freeradius:~# apt-get install mrtg
ikuti petunjuk pada layar untuk menginstall mrtg.
178
2. Untuk konfigurasinya, MRTG menyertakan cfgmaker yang akan sangat
membantu dalam mengeset router atau interface mana yang akan dipantau.
Contoh perintah menggunakan cfgmaker :
…# cfgmaker [email protected] > /etc/mrtg/config.cfg
perintah diatas akan membuat file config.cfg pada direktori /etc/mrtg yang telah
mengkonfigurasikan bahwa alamat IP 192.168.1.100 dan interface publik akan
dibuat grafik MRTGnya.
3. Untuk menjalankan MRTG, harus diketikkan path penuh dimana MRTG berada
dan diikuti file konfigurasinya, misalnya :
…# /usr/bin/mrtg /etc/mrtg/config.cfg
Hasil dari grafik MRTG tersebut dapat dilihat pada halaman web dengan
menjalankan perintah diatas pada direktori localhost, misalnya :
...# /usr/bin/mrtg /etc/mrtg/config.cfg
Perintah ini akan secara otomatis membuat file-file image dengan format PNG
seperti misalnya 192.168.1.100.png
4. Agar MRTG otomatis dijalankan setiap 5 menit sekali, perlu ditambahkan
MRTG pada crontab. Ketik crontab –e lalu tambahkan baris seperti berikut :
*/5 * * * * /usr/bin/mrtg /etc/mrtg/config.cfg
5. Langkah terakhir adalah membuat halaman index khusus bagi MRTG. Dapat
digunakan perintah indexmaker yang juga telah disertakan dalam paket MRTG.
Gunakan perintah seperti berikut :
# indexmaker /etc/mrtg/config.cfg –output=index.html
perintah tersebut akan menghasilkan file index.html berdasarkan pada
konfigurasi config.cfg
179
Setelah diuji penggunaan pengaturan bandwidth pada sebuah jaringan dengan
queue tree, hasilnya ternyata dapat lebih optimal dibanding sebelumnya. Berdasarkan
grafik MRTG pada server, (Gambar 4.46) bandwidth pemakaian dari klien akan terlihat
lebih stabil bila dibandingkan dengan sebelumnya. Selain itu juga dapat dilihat bahwa
sewaktu-waktu, klien tersebut mendapatkan burst sehingga bandwidth yang didapat
melebihi batas rata-rata. Dengan menggunakan MRTG ini baik user maupun admin akan
dapat mengetahui pemakaian bandwidth mereka secara mendetil per-usernya.
Gambar 4.46 Grafik MRTG Setelah Diimplementasikan Pengaturan Bandwidth
Sebagai catatan, nilai yang dihasilkan pada grafik MRTG pada gambar diatas
sangat kecil karena hanya berupa percobaan dan bukan pada saat implementasinya.
Mungkin saja kecepatan yang diterima masing-masing user akan berbeda tergantung
pada persetujuan user tersebut dengan pihak PT Bonet Utama.
Sistem ini diuji dengan empat komputer klien dimana terdapat bandwidth 128
Kbps dengan masing-masing memiliki 32 Kbps yang pasti didapat bila keempatnya
online dan bisa lebih bila satu atau lebih user sedang tidak menggunakan komputernya.
Ketika user A online sedangkan user B, C, dan D tidak online, maka user A akan
mendapatkan bandwidth lebih dari 32 Kbps dan mendekati 128 Kbps yang disesuaikan
dengan max limit yang terdapat pada queue tree. Besaran itu akan berkurang bila user
180
yang lain turut menggunakan koneksi Internetnya, namun dapat dipastikan tidak akan
lebih kecil dari angka 32 Kbps dengan syarat bandwidth sebesar 128 Kbps yang
disediakan ada dan stabil.
Selain menggunakan MRTG, juga diuji program RRDtool untuk monitoring.
RRDtool menawarkan fleksibilitas dalam pembuatan grafik yang tidak dapat dilakukan
dengan MRTG. Langkah-langkah instalasi dan konfigurasi RRDtool antara lain:
1). Buat database RRD dengan mengetikkan perintah berikut pada shell :
…# mkdir /usr/local/rrd
…# cd /usr/local/rrd
usr/local/rrd # rrdtool create publik.rrd --start N DS:in:COUNTER:600:U:U
DS:out:COUNTER:600:U:U RRA:AVERAGE:0.5:1:432
2). Setelah itu cari data yang dibutuhkan dengan perintah :
...# snmpwalk -v 1 -c public 192.168.1.100
Yang harus dicari adalah IF-MIB::ifDescr.X dimana X adalah sebuah angka
bernilai > 0. String ini akan memberitahukan tentang nomor dari interface yang
akan dimonitor. Contoh : interface yang akan dimonitor adalah publik sehingga
string yang dibutuhkan adalah IF-MIB::ifDescr.1=STRING: sis0.
Perintah berikut akan memasukkan jumlah byte yang tertransmisi pada jaringan
ke dalam database RRD:
…# snmpget -v 1 -c public -Oqv 192.168.1.100 IF-MIB::ifInOctets.1
IF- MIB::ifOutOctets.1
3). Selanjutnya adalah memasukkan data yang akan dimonitor ke rrd dengan perintah :
usr/local/rrd # rrdupdate /usr/local/rrd/publik.rrd N: \ <ENTER>
> (masukkan) `/usr/bin/snmpget -v 1 -c public -Oqv 192.168.1.100
181
IF- MIB::ifInOctets.1`:\ <ENTER>
>(masukkan) `/usr/bin/snmpget -v 1 -c public -Oqv 192.168.1.100
IF-MIB::ifOutOctets.1` <ENTER>
Setelah database diciptakan, langkah selanjutnya adalah menspesifikasikan
interval untuk update otomatis dengan crontab –e lalu masukkan baris script berikut
pada editor crontab :
0-55/5 * * * * /usr/bin/rrdupdate /usr/local/rrd/publik.rrd N:`/usr/bin/snmpget -v 1
\ -c public -Oqv 192.168.1.100 IF-MIB::ifInOctets.1`:`/usr/bin/snmpget -v 1 -c
public -Oqv 192.168.1.100 IF-MIB::ifOutOctets.1`
==> Keterangan : semuanya ditulis pada baris yang sama (1 baris).
4). Untuk membuat grafiknya harus dibuat suatu script dulu, misalkan dengan perintah
vi jalan.sh, akan dibuat sebuah script bernama jalan.sh. Masukkan :
#!/bin/sh
/usr/bin/rrdtool graph /usr/local/rrd/publik.png -a PNG -h 125 -s -129600 -v
"Data Throughput" \
'DEF:in=/usr/local/rrd/publik.rrd:in:AVERAGE' \
'DEF:out=/usr/local/rrd/publik.rrd:out:AVERAGE' \
'CDEF:kbin=in,1024,/' \
'CDEF:kbout=out,1024,/' \
'AREA:in#00FF00:Bandwidth In'
'LINE1:out#0000FF:Bandwidth Out\j' \
'GPRINT:kbin:LAST:Last Bandwidth In\:%3.2lf KBps'
'GPRINT:kbout:LAST:Last Bandwidth Out\: %3.2lf KBps\j' \
'GPRINT:kbin:AVERAGE:Average Bandwidth In\:%3.2lf KBps'
'GPRINT:kbout:AVERAGE:Average Bandwidth Out\:%3.2lf KBps\j'
182
5). Simpan script tersebut dan ganti hak aksesnya dengan perintah :
usr/local/rrd # chmod 755 /usr/local/rrd/jalan.sh
jalankan script tersebut dengan mengetikkan :
usr/local/rrd # /usr/local/rrd/jalan.sh
6). Langkah terakhir, untuk memasukkan gambar berformat PNG (.png) ke dalam
halaman web, masuk dulu ke direktori /var/www/ lalu buat direktori rrdtool
var/www # mkdir rrdtool
var/www # cd rrdtool
lalu link gambar-gambar dari direktori rrdtool ke direktori ini dengan perintah :
var/www/rrdtool # ln -s /usr/local/rrd/publik.png
4.3 Usulan Untuk Topologi Jaringan PT. Bonet Utama
Gambar 4.47 Contoh Topologi Yang Menggunakan Server RADIUS
183
Dengan menambahkan server RADIUS pada topologi PT. Bonet Utama, alur
data dari klien yang menggunakan layanan dial-up dengan protokol PPPoE akan
menjadi sebagai berikut :
1) Klien mendial PPPoE Server pada MikroTik yang kemudian akan
meneruskan proses AAA pada server FreeRADIUS dengan mengirimkan
paket berisi data username dan password yang dimilikinya. Data akan
diteruskan oleh switch menuju ke MikroTik dan karena alamat IP user
yang melakukan dial tidak ditranslasikan sebagai IP publik, maka user
tidak dapat melewati MikroTik menuju Internet Gateway melainkan akan
diroute menuju RADIUS terlebih dahulu.
2) Paket berisi username dan password akan diverifikasi oleh server
FreeRADIUS. Setelah user terauthentikasi, ia akan diberikan hak untuk
mengakses internet dengan jalan memberikan user tersebut sebuah alamat
IP virtual untuk koneksi PPPoE. Setelah proses otorisasi selesai, waktu
dimulainya sesi dan segala kegiatan dari user tersebut seperti jumlah
paket yang ditransmisikan dan waktu penghentian sesi tersebut akan
dicatat dan dihitung pada Billing System yang ada.
3) Alamat IP virtual dari RADIUS untuk koneksi PPPoE sebelumnya telah
ditranslasikan oleh MikroTik sehingga ketika user tersebut mendapat
otorisasi, MikroTik akan meneruskan paket permintaan (request) dari
user melewati internet gateway. Pada saat user mendapat hak akses itu
jugalah MikroTik akan memberikan besar bandwidth sesuai dengan yang
telah dikonfigurasikan sebelumnya untuk user tersebut.
184
Setelah RADIUS diimplementasikan, topologi jaringan pada PT. Bonet Utama
akan menjadi seperti pada Gambar 4.48 berikut.
Gambar 4.48 Topologi Jaringan PT. Bonet Utama Setelah Implementasi
185
Setelah diletakkan ke dalam jaringan PT. Bonet Utama, Router Abimanyu yang
merupakan PC Router dengan RouterOS MikroTik, harus diaktifkan fitur PPPoE
Servernya. Selain itu, server RADIUS dan juga billing system yang baru akan diletakkan
pada jaringan utama yaitu pada switch Cisco 2950. Namun terdapat juga pilihan lain,
yaitu dengan meletakkan PPPoE Server pada tiap-tiap RT/RW-Net untuk menghindari
kebutuhan akan adanya access point yang harus berfungsi sebagai transparent bridge.
4.4 Analisa Sistem Yang Diusulkan
Bila dilihat dari sisi efektifitas bandwidth, maka dapat dikatakan implementasi
PPPoE Server dan RADIUS akan membuat pemakaian bandwidth secara keseluruhan
menjadi lebih efisien. Sebagai contoh dapat dilihat pada grafik MRTG berikut ini yang
menunjukkan aktifitas seorang pengguna jasa PT. Bonet Utama.
Gambar 4.49 Grafik MRTG seorang user sebelum menggunakan PPPoE
Seperti yang telah disebutkan sebelumnya, traffic dari user ini tampak tinggi
bahkan hampir selama 24 jam sehari. Karena konsep RT/RW-Net adalah Internet
sharing, maka dapat dipastikan user lainnya akan terganggu bila akan menggunakan
Internet, karena bandwidth yang diberikan oleh PT. Bonet Utama akan terpakai hampir
maksimal setiap harinya oleh para pelanggan. Bila terdapat 128 Kbps bandwidth yang
seharusnya di-share oleh 3 orang user dan salah satu menggunakannya hingga hampir
186
mencapai 108 Kbps dalam 12 jam sehari, maka dapat dibayangkan apa yang akan
terjadi.
Sedangkan bila sistem baru diimplementasikan, traffic dari suatu user akan
berubah sesuai dengan paket billing system yang diambil. Karena dengan dibatasinya
baik itu waktu maupun jumlah data yang dikirim / diterima, user akan menggunakan
akses Internetnya sesuai dengan kebutuhannya, dan akan hilang prinsip dari user yang
“tidak mau rugi“.
Sebagai contoh, bila user mengambil paket billing system yang akan dibayarkan
berdasarkan waktu pemakaian, tentunya user tersebut kemungkinan besar tidak akan
melakukan akfitas Internet selama 24 jam non-stop, karena hal itu tentu akan
memberatkannya secara biaya bagi dirinya sendiri, begitu pula bila user mengambil
paket yang berdasarkan pada jumlah data yang ditransmisikan. Akibat dari hal ini,
secara tidak langsung akan meningkatkan efisiensi atau kualitas dari akses Internet
tersebut ke para pelanggannya.
4.5 Biaya Investasi
Secara umum tidak diusulkan biaya investasi tambahan yang besar. Perubahan
yang mendesak hanyalah penambahan sebuah server AAA (RADIUS) terlebih dahulu.
Untuk server RADIUS tersebut, disarankan untuk menggunakan PC dengan spesifikasi
sebagai berikut :
• Intel Pentium 4 1.7 GHz (Pentium III Minimum)
• Memory 512 MB DDR (128 MB Minimum)
• HDD 30 GB/7200 Rpm (10 GB Minimum)
187
• CDRom Drive
• Monitor 15" SVGA
• Keyboard & Mouse
Untuk menjalankan sistem operasi Linux (baik Ubuntu maupun Kubuntu)
tidaklah diperlukan hardware yang canggih atau terbaru. Namun karena fungsinya
sebagai server FreeRADIUS, web server dan sekaligus billing server, sangat disarankan
spesifikasi seperti yang telah disebutkan diatas. Untuk spesifikasi demikian, perusahaan
akan membutuhkan biaya investasi sebesar $200-350 untuk server ini. Untuk menekan
biaya, akan lebih baik bila menggunakan open source software seperti misalnya Linux,
FreeRADIUS, Apache, dsb. Menurut analisa yang telah dilakukan, dengan adanya
server RADIUS, PT. Bonet Utama akan mendapat keuntungan seperti misalnya
membuat pelanggan yang membutuhkan akses internet yang cepat dan aman namun
tidak perlu internet yang always-on menjadi puas dengan adanya sistem billing yang
baru ini.