1
IMPLEMENTASI VPN DAN PROXY SERVER MENGGUNAKAN FREEBSD
PADA SMA ISLAM HIDAYATULLAH
Mohamad Lukman Pranoto
Program Studi Teknik Komputer, Politeknik Telkom Bandung Jalan Telekomunikasi Ters. Buah Batu, Bandung 40257
1
Mohamad Lukman Pranoto [email protected]
2
Tengku Ahmad Riza [email protected]
3
Budhi Hamdani [email protected]
ABSTRAK
Internet saat ini sudah banyak diterapkan di mana saja umumnya di sekolah. Namun, masalah yang ditemui adalah keterbatasan akses data jaringan lokal untuk diakses dari luar lingkup area SMA, banyaknya
users yang mengakses situs terlarang, dan melakukan browsing dengan mengunjungi situs yang sama
berulang kali sehingga diperlukan solusi untuk masalah ini. Salah satu metode untuk menangani masalah ini adalah dengan menggunakan VPN untuk kemudahan akses ke jaringan lokal dan penggunaan Proxy Server sebagai web caching dan web filtering.
Pada Proyek akhir ini akan dibuat VPN dan Proxy Server sebagai solusi atas permasalahan yang ada di SMA Islam Hidayatullah. Sistem Operasi yang digunakan untuk membuat VPN dan Proxy Server ini menggunakan FreeBSD 8.2 Release sedangkan package yang digunakan berupa squid sebagai autentikasi web
filtering dan web caching dan VPN menggunakan protokol PPTP serta Freeradius sebagai databasenya.
Dari hasil pengujian sistem yang telah di buat, menunjukkan bahwa VPN dapat menyelesaikan masalah berupa pengaksesan data lokal melalui jaringan luar SMA secara baik. Adapun dari pengujian web
filtering dihasilkan bahwa ketika clients mengakses situs terlarang, sistem dapat memblokir akses ke situs
tersebut. Dalam hal web caching, sistem mampu melakukan penyimpanan caching terhadap konten situs yang pernah dibuka. Akan tetapi, terdapat kekurangan dalam admin memperbaharui database situs terlarang yang baru muncul atau belum diketahui. Untuk itu diperlukan alat bantu yang dapat mempermudah dalam proses pencarian situs terlarang yang belum diketahui.
Kata Kunci : squid proxy, caching, VPN, pemblokiran situs
ABSTRACT
Internet is applied anywhere in the Senior High School. However, the problem encountered is the lack of access to local network data to be accessed from outside the scope of high school, there are many users accessing forbidden sites, and browsing by visiting the same sites over and over again so needed some solutions to this problem. One method to handle this problem is to use VPN for easy access to local network s and the use of the Proxy Server as web caching and web filtering.
In this project, the author made a VPN Proxy Server as a solution to the problems that exist in the Hidayatullah Islamic school. Operating system that is used to create a VPN and Proxy Server are using FreeBSD 8.2 Release while the package is used as an authentication of squid web caching and web filtering and VPN using PPTP protocol and FreeRADIUS as the database.
The results of the testing of the system that has been made, showing that the VPN can solve the problem of accessing local data through the network beyond high school well. The testing of web filtering that is generated when clients access a banned site, the system can block access to the site. In case of web caching, the storage system is able to perform caching of the contents of the opened sites. However, there are deficiencies for the adminupdating the database of new prohibited sites or unknown sites. It required a tool that can facilitate the process of finding unknown forbidden sites.
Keyword : Squid proxy, caching,VPN, blocking of sites
1. Pendahuluan
Kemajuan ilmu pengetahuan dan teknologi telah mendorong manusia untuk berusaha mengatasi segala permasalahan yang timbul di sekitarnya. Pemanfaatan teknologi yang sering digunakan salah satunya adalah internet. Salah satu manfaat internet telah banyak digunakan oleh kalangan umum, khususnya dunia pendidikan. Mudahnya komunikasi
dan transfer data menjadi alasan pemanfaatan internet sebagai media pembelajaran selain buku tekstual.
Di SMA Islam Hidayatullah terdapat kemudahan dalam mengakses internet sehingga kebutuhan seperti
browsing, chatting, download tidak lepas dari
masalah keamanan data dan content-content yang termuat di dalamnya. Diperlukan suatu sistem keamanan jaringan yang dibangun untuk menangani
masalah tersebut, salah satunya menggunakan proxy
server. Dengan menggunakan proxy server berbagai
fitur bisa digunakan diantaranya memblokir
content-content yang tidak diperbolehkan untuk diakses, caching objek web yang pernah dibuka, dan
manajemen bandwith user.
Disamping itu pengaksesan data saat ini menjadi suatu kebutuhan yang tinggi dimana setiap orang perlu untuk mengakses file dimanapun berada tanpa terbatasi waktu dan tempat. Salah satu upaya yang dilakukan adalah dengan menggunakan VPN (Virtual
Private Network ). Dengan adanya fasilitas VPN,
memungkinkan user bisa terkoneksi ke jaringan publik dan menggunakannya untuk bergabung dalam jaringan lokal.
2. Konsep Dasar
1. FreeBSD
FreeBSD adalah sebuah sistem operasi komputer berbasiskan 4.4BSD-Lite2, sebuah versi dari UNIX yang dikembangkan oleh University of California di Berkeley. Saat ini FreeBSD dikembangkan oleh sebuah group developer dari seluruh penjuru dunia. Dalam melengkapi diri sebagai sebuah sistem operasi yang lengkap bagi penggunanya, FreeBSD memberikan dukungan sebuah koleksi metafile yang berguna untuk membantu instalasi aplikasi tambahan yang disebut sebagai Ports Collection serta Packages sebagai bentuk paket siap instal. Di Internet terdapat banyak sekali aplikasi gratis yang umumnya didistribusikan dalam bentuk source code.
Beberapa Kelebihan yang dimiliki FreeBSD: a. Portabilitas
b. Power
c. Manajemen software yang sederhana d. Progres upgrade yang optimal
2. Proxy Server
Proxy dalam pengertiannya sebagai perantara,
bekerja dalam berbagai jenis protokol komunikasi jaringan dan dapat berada pada level-level yang berbeda pada hirarki layer protokol komunikasi jaringan. Suatu perantara dapat saja bekerja pada layer Data-Link, layer Network dan Transport, maupun layer Aplikasi dalam hirarki layer komunikasi jaringan menurut OSI. Namun pengertian
Proxy Server sebagian besar adalah untuk menunjuk
suatu server yang bekerja sebagai Proxy pada layer Aplikasi.
Terdapat 2 jenis proxy yang paling sering digunakan saat ini :
a. Anynomous Proxy : Alamat IP client tidak terdeteksi oleh server provider Internet, namun provider mengetahui apabila koneksi dilakukan melalui proxy. Proxy jenis ini sangat berguna sekali saat digunakan untuk menjaga privasi IP address clients saat melakukan browsing.
b. Transparant Proxy : Alamat IP client dapat terdeteksi oleh server tujuan ( server provider). Proxy jenis ini sangat sering digunakan untuk meningkatkan kecepatan Internet. Proxy jenis inilah yang digunakan penulis dalam proyek akhir ini.
3. Cache
Cache adalah suatu tempat untuk menyimpan
sesuatu secara sementara, mekanisme untuk mempercepat transfer data dengan cara menyimpan data yang telah di akses di suatu buffer, dengan harapan jika data yang sama akan diakses, akses akan menjadi lebih cepat. Dalam Internet, sebuah proxy
cache dapat mempercepat proses browsing dengan
cara menyimpan data yang telah diakses di komputer yang berjarak dekat dengan komputer pengakses.
Jika kemudian ada user yang mengakses data yang sama, proxy cache akan mengirim data tersebut dari cache-nya, bukan dari tempat yang lama diakses. Dengan mekanisme HTTP, data yang diberikan oleh
proxy selalu data yang terbaru, karena Proxy Server
akan selalu mencocok kan data yang ada di cache-nya dengan data yang ada di server luar.
Terdapat 2 jenis cache, yaitu:
1. Software cache (caching disk controller); akan mempercepat akses data pada disk dengan menyimpan data yang baru saja digunakan dalam memori.
2. Hardware cache (on−the−board cache); akan mempercepat akses memori itu sendiri dengan menyimpan data yang baru saja digunakan dalam memori.
4. Squid
Squid merupakan mesin caching proxy untuk klien Web, seperti HTTP, HTTPS, FTP, gopher dan layanan sejenis lainnya. Squid mampu menurunkan konsumsi bandwith sekaligus mempercepat waktu respons. Ini terwujud dengan melakukan caching
halaman web dan menggunakan ulang halaman yang sering dikunjungi.
Squid memiliki setumpuk kendali akses yang dapat mendongkrak kecepatan server. Squid menangani semua request melalui sebuah proses I/O tunggal.
Squid bekerja menyimpan meta data, terutama pada objek yang sering diakses. Mereka dijaga
(di-cache) dalam memori RAM. Squid juga mampu
melayani lookup pada DNS.
5. Radius
Radius adalah singkatan dari Remote Authentication Dial-in User Service yang berfungsi
untuk menyediakan mekanisme keamanan dan manajemen user pada jaringan komputer. Radius diterapkan dalam jaringan dengan model clientserver. Server Radius menyediakan mekanisme keamanan dengan menangani autentifikasi user. Pada saat komputer client akan menghubungkan diri dengan jaringan maka server Radius akan meminta identitas
user (username dan password) untuk kemudian
dicocokkan dengan data yang ada dalam database
eserver Radius untuk kemudian ditentukan apakah user diijinkan untuk menggunakan layanan dalam
jaringan komputer. Jika proses autentifikasi berhas il maka proses pelaporan dilakukan, yakni dengan mencatat semua aktifitas koneksi user, menghitung durasi waktu dan jumlah transfer data dilakukan oleh
user. Proses pelaporan yang dilakukan server Radius
bisa dalam bentuk waktu(detik, menit, jam) maupun dalam bentuk besar transfer data (Byte, KByte,MByte).
Fitur-Fitur dari Free Radius secara garis besar : a. Memiliki performance yang tinggi,
mendukung HA, Fail-Over.
b. Kaya fitur, dukung banyak Operating System, EAP, Database, fungsionalitas AAA, Virtual Server, Proxy, dll.
c. Modular, dukungan addon/plugin tambahan, dapat diimplementasikan pada embedded system.
d. Skalabilitas, untuk beban yang tinggi freeradius mensupport berdasarkan maksimum request dan maksimum server(cpu).
6. VPN (Virtual Private Network)
VPN adalah singkatan dari virtual private
network, yaitu jaringan pribadi (bukan untuk akses
umum) yang menggunakan medium nonpribadi (misalnya internet) untuk menghubungkan antar
remotesite secara aman. Penerapan teknologi tertentu
juga diperlukan karena jaringan ini menggunakan medium yang umum, tetapi traffic (lalu lintas) antar
remote-site tidak dapat disadap dengan mudah, juga
tidak memungkinkan pihak lain untuk menyusupkan
traffic yang tidak semestinya ke dalam remote-site.
Beberapa keuntungan VPN antara lain:
a. Anonymous surfing (menjelalah internet tanpa terlacak)
b. Keamanan informasi yang diterima atau dikirim melalui internet dengan enkripsi standar VPN 128 bit / 1024 bit
c. Dapat mengakses apapun situs yang memblok IP dari Indonesia
d. Melindungi komputer dari serangan virus, malware, worm, trojan, dsb, karena saat Anda online IP yang digunakan ada IP server VPN bukan IP user
e. Menjaga keamanan User dan Password dari sniffers
f. Menaikkan kembali kecepatan bagi pelanggan ISP atau
g. Provider tertentu dengan batasan Quota, jika telah melebihi Quota yang ditentukan h. Bypass semua blok yang dilakukan ISP ,
seperti download torrent dan leecher i. Mempercepat koneksi yang terhubung
dengan hotspot (dengan bandwith limiter)
3. Analisa Kebutuhan Dan Perancangan
Berdasarkan informasi yang didapat penulis tentang hal-hal yang dibutuhkan dan diinginkan oleh pihak SMA Islam Hidayatullah, penulis menemukan beberapa permasalahan yang dihadapi adalah sebagai berikut :
1. Terdapat pengguna yang mengakses situs situs terlarang seperti situs porno dan mengunduh video tersebut.
2. Tidak adanya server yang menangani
caching sehingga ketika beberapa pengguna browsing ke situs yang sama, komputer clients akan mengambil data yang sama
ini menyebabkan penggunaan bandwidth tidak efektif.
3. Kebutuhan pengaksesan file yang berada di jaringan lokal ketika jam sekolah berakhir.
Analisis Kebutuhan
Berdasarkan uraian permasalahan yang ada saat ini di SMA Islam Hidayatullah. Permasalahan utamannya adalah tidak adanya server yang dirancang khusus untuk menangani caching,
pemblokiran akses dan akses ke jaringan lokal. Oleh karena itu penulis membuat solusi permasalahan dengan membangun sebuah Server Proxy, untuk menangani caching, dan pemblokiran akses secara bersamaan. Dan menggunakan VPN Server.
Perancangan Sistem
Adapun arsitektur sistem yang direncanakan dalam proyek akhir ini adalah sebagai berikut:
Gambar 1 Arsitektur Sistem 4. Deskripsi Sistem
Tujuan proyek akhir ini akan diterapkan sistem VPN (Virtual Private Network ), RADIUS dan
Proxy Server pada jaringan local. Tahap pertama dari
perancangan sistem tersebut adalah membuat rancangan jaringan yang akan diimplementasikan pada SMA Islam Hidayatullah. Nantinya akan disediakan satu PC sebagai VPN, Proxy, RADIUS Server dan satu PC sebagai Router. Operating Sistem dari PC server dan PC Router yang akan digunakan menggunakan FreeBSD.
Selanjutnya proxy akan bekerja ketika client berhasil login dan sukses masuk ke jaringan internet.
Proxy ini berfungsi untuk melakukan web filtering
dan web caching yaitu mencegah client membuka situs-situs yang dianggap berbahaya dan melakukan
cache terhadap objek content yang pernah disinggahi
dan disimpan ke dalam hardds ik proxy server. Proses kerja dari jaringan luar ke dalam jaringan lokal hampir sama yaitu client dial-up ke jaringan private menggunakan VPN. Kemudian ketika membuka web browser akan muncul sistem autentikasi untuk masuk ke dalam jaringan private. Apabila username dan password cocok, client akan masuk ke dalam jaringan private melalui jaringan publik internet.
Gambar 2
5. Implementasi
1. konfigurasi IP Address rl0 dan xl0 dengan perintah:
2. Melakukan compile kernel pada OS FreeBSD untuk penambahan sistem NAT dan ipfilter 3. Melakukan penambahan baris pada file
/etc/rc.conf untuk mengaktifkan system secara otomatis ketika startup mesin, berupa :
sshd_enable="YES" firewall_enable="YES" firewall_type="OPEN" natd_enable="YES" natd_interface="rl0" router_enable="YES" squid_enable="YES" pptpd_enable="YES" mysql_enable="YES" radiusd_enable="YES" ipfilter_enable="YES" ipnat_enable="YES" ipnat_rules="/etc/ipnat.rules"
4. Instalasi Squid dan konfigurasi squid dengan perintah dengan perintah :
5. Karena squid dikonfigurasi dengan mode
transparent maka ditambahkan perintah :
6. Melakukan instalasi poptop
7. Melakukan instalasi freeradius dan mysql
6. Pengujian
Untuk menguji apakah VPN telah berjalan lancar perlu digunakan pengujian dari client. Pengujian dilakukan dengan menggunakan OS Windows XP menggunakan dial VPN metode PPTP. Berikut langkah pengujian:
a. Membuat koneksi VPN
b. Melakukan dial ke IP Publik VPN Server serta memasukkan username dan password yang telah dibuat di RADIUS.
Gambar 3 Dial VPN dari sisi client
Gambar 4
Autentikasi Username dan Password a. Melihat ip yang didapat dari ip virtual
VPN lewat cmd
Gambar 5 IP Address VPN Client
# cd /usr/ports/database/mysql51-server # make install clean
# cd /usr/ports/database/freeradius2 # make install clean
# cd /usr/ports/net/poptop # make install clean # nano /etc/ipnat.rules rdr xl0 0/0 port 80 -> 192.168.3.1 port 3128 tcp # cd /usr/ports/www/squid31 # nano /usr/local/etc/squid/squid.conf #nano /etc/rc.conf ifconfig_rl0="inet 192.168.1.1 netmask 255.255.255.0" ifconfig_xl0="inet 192.168.3.1 netmask 255.255.255.252" defaultrouter="192.168.1.3" hostname="smaih.com"
Didapat ip ip client vpn 192.168.1.247 subnetmask 255.255.255.255
b. Masuk ke dalam server FreeBSD menggunakan tools PuTTy. Karena sudah terkoneksi ke jaringan private menggunakan VPN, maka dial ke ip 192.168.1.1. Kemudian masukkan username dan password FreeBSD
Gambar 6
Tampilan awal koneksi PuTTy e. Setelah memasukkan username dan
password ke dan berhasil login ke server FreeBSD, tampilan sebagai berikut.
Gambar 7
Tampilan Awal Login FreeBSD f. Mencoba untuk mengakses jaringan private
di Lokal Area Network
Gambar 8 Mengakses FTP lokal
Untuk menguji squid, penulis melakukan beberapa langkah berikut.
1. Pertama penulis menguji dengan cara mengakses http://bangbrosnetwork.com/ melalui web browser salah satu client pada jaringan lokal.
Gambar 9 Hasil Pengecekan Squid
Dari pengujian akses ke alamat http://bangbrosnetwork.com/ mendeteksi dan memberikan informasi bahwa client pada jaringan lokal dengan mengakses internet melalui SQUID 3.1 STABLE18. Hal ini berarti proxy squid telah berjalan dengan semestinya.
2. Selanjutnya penulis melakukan monitoring terhadap jumlah HIT dan MISS yang terjadi pada Squid Proxy.
Gambar 10
7. Kesimpulan
Berdasarkan hasil pengujian dari implementasi proyek akhir ini dapat diambil beberapa kesimpulan yaitu:
1. Pengimplementasian VPN dan Proxy Server menggunakan FreeBSD di lingkungan SMA Islam Hidayatullah berhasil dilakukan
2. Kecepatan proses akses ke web akan lebih cepat karena konten yang sudah pernah dibuka (history content) akan tersimpan dalam cache
proxy sehingga tidak perlu mengakses ulang
dari global network
3. Membatasi alamat web dan konten yang bersifat tidak mendidik dan mengandung unsur
negative (contoh situs pornografi) dapat
difilter dan tidak bisa diakses oleh client. 4. Dengan menggunakan Radius sebagai
database VPN, dapat mempermudah admin dalam melakukan accounting, dan manajemen
database client
8. Saran
Guna menjaga kelangsungan fungsi filtering content khususnya situs yang mengandung unsur negative, perlu dilakukan maintenance secara berkala dengan melakukan pencarian kata kunci atau k eyword untuk situs-situs baru yang akan difilter dan mengupdate secara otomatis situs-situs pornografi yang baru.
Daftar Pustaka
[1] C. Rigney, S. Willens, A. Rubens, W. Simpson, Remote
Authentication Dial In User Servi ce (RADIUS ) RFC 2865, 2138, 1997, [online] Tersedia: http://www.ietf.org/rfc/rfc2138.txt, [23 Mei 2011] [2] Handay a, Wilfridus Bambang Triadi, dkk. (2008). Linux Sistem
Administrator. Bandung: Penerbit Inform atika.
[3] Poerwo, Doddy. Aplikasi Manajemen Bandwith Akses Internet
pada Local Area Network, Tugas Akhir STT Telkom
2005.
[4] Rafiudin, Rahmat. (2008). Squid Koneksi Anti Mogok. Yogyakart a: Penerbit ANDI.
[5] Riadi, Imam (2011). FreeBSD Handboo k. [online]. Tersedia: http://imamriadi.com/2010/10/25/ebooks-pendukung-referensimah asiswa/ [30 Mei 2011]
[6] Snader, Jon C. (2006). VPNs Illustrated : Tunnels, VPN, and
IPsec. USA: Addison Wesley.
[7] Sopandi, Ded e. (2008). Instalasi dan Konfigurasi Jaringan
Komputer. Bandung: Penerbit Informatika.
[8] Wendy, Aris, Ahmad. (2005). Membangun VPN Linux s ecara
cepat. Yogyakarta: Penerbit ANDI.
[9] Widodo, Sugeng, Marjuki, A.I. (2006). STIKI Server Handbook
Panduan Langkah per Langkah Implementasi OS FreeBSD pada Ser ver STIKI. Malang: Laboratorium