Anda di halaman 1dari 0

PERANCANGAN DAN PEMBUATAN PROXY SERVER MENGGUNAKAN

SISTEM OPERASI LINUX UBUNTU KARMIC 9.10



Andika Putra
Program Studi Sistem Informasi, Fakultas Ilmu Komputer
Universitas Mercu Buana, J akarta
http://www.mercubuana.ac.id

ABSTRAKSI
Dengan berkembangnya banyak sistem operasi open source tentunya banyak
berpengaruh pada pola penanganan pada teknologi informasi dalam suatu perusahaan, hal
ini diantaranya karena mempunyai sifat rendah biaya penerapan, penerapan yang dapat
dikembangkan, stabil danl lain-lain. Bagi para administrator, pasti pernah berfikir
bagaimana caranya agar loading situs yang dibuka oleh user terasa lebih cepat, dapat
memblok situs-situs porno yang sering membawa spyware, membatasi ukuran download
file user, autentikasi user mana saja browsing, me-redirect suatu situs porno ke situs yang
lain, dan sebagainya. J ika itu permasalahaannya, maka jawabannya adalah si
administrator dapat membuat sebuah mesin proxy server untuk menjembatani hubungan
dari internet ke user. Mesin proxy ini akan bertindak sebagai pemfilter paket yang datang
dari internet, baik itu melalui port http atau ftp sebelum sampai ke user.
Proxy server adalah server yang berguna sebagai perantara client dengan server
gateway sebelum berhubungan ke internet. Dengan adanya proxy ini, maka url / situs
yang sering di browsing akan semakin terasa semakin cepat terakses oleh user, karena
telah disimpan di dalam cache proxy.
Untuk membuat proxy server ini, penulis menggunakan sistem operasi linux
Ubuntu karmic 9.10 dengan squid sebagai aplikasi proxy, proxy server ini juga memiliki
fungsi lainnya, diantaranya autentikasi user, memblok situs, memblok banner, dan lain-
lain.

PENDAHULUAN

Latar Belakang Masalah
Perlu diketahui, untuk membangun
sebuah proxy server, spesifikasi
komputer server harus disesuaikan
dengan banyaknya komputer client.
Semakin banyak komputer client maka
spesifikasi komputer server harus
semakin tinggi. Komponen paling
penting yang harus diperhatikan adalah
memory, karena pada dasarnya
manajemen proxy adalah sharing
memory antara komputer server dengan
client. Siapkan memory sesuai dengan
jumlah komputer client, memory
minimal 1 Gbyte layak untuk
dipertimbangkan untuk mengatasi
masalah pada komputer client yang
tersendat-sendat saat menjalankan
aplikasi.
Adanya sweeping dari pemerintah yang
berkaitan dengan sistem operasi bajakan
yang terjadi di Indonesia, perlu
diperkenalkan suatu sistem yang
mendukung tingkat penggunan software
yang murah tanpa mengurangi
kemampuan sistem yang ada. Daripada
membayar denda atau membayar harga
lisensi yang sangat mahal, mereka lebih
memilih untuk beralih ke solusi open
source. Linux Proxy Server, karena
biayanya yang sangat ekonomis baik
dari sisi hardware maupun software dan
kemudahan pemakaian & perawatannya,
menjadikannya sebagai salah satu solusi
yang pantas untuk dipertimbangkan.
Pada suatu organisasi ataupun
perusahaan yang menerapkan sistem
sharing internet, diperlukan suatu
manajemen pengguna internet untuk
membatasi penggunaan internet yang
dapat disalahgunakan yang tidak sesuai
untuk peruntukannya dan juga atas
pertimbangan keamanan jaringan dari
serangan virus melalui jaringan internet.

Perumusan Masalah
Dari latar belakang masalah yang telah
diuraikan diatas, maka dapat dirumuskan
beberapa masalah, bagaimana
membangun jaringan intranet atau
jaringan internet yang mempunyai
dukungan tidak saja tingkat keamanan
tinggi tetapi juga keamanan yang
sedemikian rupa sehingga pengguna
dapat dengan mudah mengakses,
mengubah, dan berbagi lebih banyak
informasi, tidak lupa, dibawah kondisi -
kondisi yang secara hati - hati
dikendalikan dan dipelihara.

Batasan Masalah
Perancangan sistem ini terdapat batasan-
batasan masalah yang meliputi :
1. Sistem dibangun menggunakan
sistem operasi Ubuntu Karmic 9.10
2. Utilitas yang digunakan untuk
implementasi yaitu iptables untuk
firewall dan squid untuk proxy

Tujuan Penelitian
Tugas Akhir ini bertujuan untuk
menerapkan pengendalian dan keamanan
penggunaan internet pada suatu
organisasi ataupun perusahaan kecil
menengah dengan pemanfaatan biaya
seminimal dan mungkin dengan
menggunakan sistem opensource linux
ubuntu karmic 9.10
Manfaat Penelitian
Manfaat yang bisa diambil dari Tugas
Akhir ini antara lain :
1. Sebagai sarana pembelajaran bagi
penulis dan pembaca tentang
pengendailan penggunaan sistem
sharing internet dan keamanan jaringan
komputer untuk penggunaan internet.
2. Memberikan sebuah solusi dalam
pertukaran data atau informasi melalui
internet yang terjamin keamanannya dan
biaya penerapan yang rendah.

Sistematika Penelitian
Untuk memudahkan dalam mengkaji
penulisan ini maka diuraikan secara
ringkas sistematika penulisan tentang
materi dari tiap-tiap bab sebagai berikut :
BAB I : PENDAHULUAN
Pada bab ini penulis menguraikan
tentang latar belakang masalah,
perumusan masalah, tujuan dan manfaat
penelitian, metodologi penelitian dan
sistematika penulisan.

BAB II : LANDASAN TEORI
Pada bab ini penulis akan menguraikan
tentang landasan teori yang berkaitan
dengan perancangan jaringan
menggunakan sistem opensource
menggunakan beberapa utilitas
pendukung yang tentunya bersifat GPL
(General Public Licesense).

BAB III : PERANCANGAN PROXY
SERVER
Pada bab ini penulis menguraikan
perancang dari struktur jaringan pada
pengguna komputer yang akan di kelola
oleh server proxy dari Linux Ubuntu
9.10 karmic.

BAB IV : PEMBUATAN SERVER
Pada bab ini penulis akan menguraikan
tentang cara pembuatan server dan
penerapannya pada beberapa komputer
yang akan menggunakan akses jaringan
internet.

BAB V : PEMBAHASAN
Bab ini menguraikan mengenai
permasalahan yang diangka dalam
penulisan ini, analisa input, analisa
proses dan analisa output

BAB VI : KESIMPULAN DAN
SARAN
Bab ini menjelaskan kesimpulan dan
saran atas hasil penelitian penulis untuk
pengembangan dimasa yang akan datang
menjadi lebih baik.
PERANCANGAN SQUID PROXY
Proses Sistem squid Proxy
Squid adalah sebuah daemon yang
digunakan sebagai proxy server dan web
cache. Squid memiliki banyak jenis
penggunaan, mulai dari mempercepat
server web dengan melakukan caching
permintaan yang berulang-ulang,
cahcing DNS, caching situs web, dan
caching pencarian komputer didalam
jaringan untuk kelompok komputer yang
menggunakan sumber daya jaringan
yang sama hingga membantu keamanan
dengan cara melakukan penyaringan
(filter) lalu lintas alur data di jaringan.
Meskipun sering digunakan untuk
protokol HTTP dan FTP, squid juga
menawarkan dukungan terbatas untuk
beberapa protokol lainnya termasuk
transport layer Security (TLS), Secure
Socket Layer (SSL), Internet Gopher dan
HTTPS.
Berikut Proses System Squid Proxy pada
server yang akan dibangun :


Gambar Proses Sistem Proxy

1. Request / permintaan dari sebuah
browser baik sebuah pencarian kata,
gambar maupun alamat website
secara default di teruskan / forward
melalui port 80
2. Iptables Firewall merubah / redirect
permintaan / request yang datang
menuju port 80 ke port 3128 (proxy
proses port)
3. Squid akan memfilter setiap sumber
permintaan / request apakah dapat
diteruskan / forward atau tidak,
apabila tidak akan di teruskan /
redirect pada halaman penolakan
akses
4. Filter pertama dilakuan berdasarkan
id PC klien yaitu mac address NIC
PC tersebut apakah terdaftar atau
tidak
5. Filter kedua dilakukan berdasarkan
otentikasi username beserta
password yang sudah di daftarkan
6. Filter ketiga ialah melakukan
filtering content, phrase apakah
memenuhi kepatutan dalam
berinternet sehat ( tidak mengandung
pornografi), untuk filtering ini akan
terus berjalan setiap ada permintaan /
request

Perancangan Infrastruktur Jaringan
Berdasarkan analisis kebutuhan untuk
merancang / mengembangkan jaringan
proxy yang paling sesuai dengan kondisi
minimum yang bisa penulis sediakan,
maka berikut perancangan jaringan yang
dibutuhkan pada pembuatan proxy
jaringan lokal sederhana berdasarkan
rancangan infrastruktur berikut

Gambar Perancangan Infrastruktur
Jaringan proxy

Identifikasi Kebutuhan
Tahapan yang sangat krusial dalam
perancangan sebuah jaringan adalah
identifikasi kebutuhan suatu organisasi
atau perusahaan. Biasanya sebuah
organisasi atau perusahaan besar
sebelum membangun jaringan
melakukan audit terlebih dahulu,
misalnya dengan COBIT1. Saat ini
sudah menjadi suatu keharusan atau
wajib hukumnya, suatu
organisasi/perusahaan besar yang akan
menggunakan suatu teknologi informasi
baik sebagai support atau decision
melakukan tahapan audit sebelum
menerapkan teknologi informasi.
Beberapa faktor yang penting
diperhatikan dalam identifikasi
kebutuhan, adalah :
a. J enis layanan yang akan diberikan
jaringan
b. Skalabilitas, yaitu seberapa besar
jaringan yang akan dibuat?
c. Expandable, apakah jaringan dapat
di-expand? open-ended?
d. Kondisi ruangan dan gedung
e. Medium transmisi yang akan
digunakan, apakah menggunakan
f. kabel atau nirkabel(wireless)?
g. Berapa bandwith yang diberikan
atau akan digunakan?
h. Topologi yang digunakan?
Protokol yang akan dipakai?
i. Ketersediaan perangkat keras,
pemilihan server atau perangkat
lain seperti hub, switch, dan
router.
j. Perangkat lunak jaringan sebagai
platform
k. Managebility dan monitoring
sistem
l. Keamanan/Security
m. Alokasi biaya pengadaan peralatan
n. Sumberdaya Manusia sebagai
pengelola

1 COBIT :Control Objectives for
Information and related Technology,
merupakan tools, framework and IT
Audit; www.isaca.org/cobit/.

Perangkat Keras Yang dibutuhkan
1. Server Proxy dengan spesifikasi
berikut
Sistem Operasi : Linux Ubuntu
9.10
Prosecor : Core Duo 2.2 Ghz
Memory : 1 GB
Harddisk : 80 GB
DVD room
NIC Card : 2 buah

2. Modem ADSL
3. ISP : Telkom Speedy
4. Hub / Switch : Dlink 8 port
5. Kabel UTP & RJ 45 :
Secukupnya

Platform atau sistem operasi/Operating
System (OS) server untuk perancangan
ini menggunakan Linux distro ubuntu
910, sedangkan untuk client
menggunakan Windows Xp, namun
pada dasarnya untuk client dapat
menggunakan system operasi apapun
J aringan computer pada perancangan ini
memerlukan pengamanan yang sangat
baik. Untuk DMZ, disarankan firewall
yang digunakan adalah IPTABLES dari
linux Ubuntunya.

Sistem Otentikasi klien
Sistem otentikasi klien berfungsi untuk
menentukan klien berhak atau tidak
melakukan akses internet. Sebelum
akses internet, klien harus mengunjungi
alamat web server untuk login dengan
cara memasukkan user ID dan password.
Sistem akan mengecek kesesuaian antara
user ID dan password. Apabila semua
persyaratan diatas terpenuhi, maka klien
berhak melakukan akses internet,
sebaliknya jika tidak terpenuhi maka
sistem akan menolak pemberian hak
akses internet. Pemberian akses internet
dilakukan dengan cara mendaftarkan
mac address dari komputer yang
digunakan oleh klien ke server proxy
yang merupakan acuan dari squid untuk
menentukan komputer yang berhak
akses internet dan tidak.

Membatasi Akses dengan Mac
Address
Walaupun squid bekerja pada level
aplikasi namun dapat memfilter akses
yang berasal dari nertwork card tertentu.
Squid dapat melihat alamat hardware
atau MAC address ethernet card, dengan
syarat sebagai berikut:
o Komputer yang hendak di filter
harus berada pada network yang
sama dengan server proxy
o Squid telah dikompilasi dengan
mengaktifkan option enable arp-
acl
Untuk memblok MAC Adress
menggunakan konfigurasi berikut
Acl all src 129.168.0.0/24
Acl mac arp 00:0c:29:cf:fa:53
http_access deny mac
http_access allow all

Membatasi Akses dengan Username
Squid dapat dikonfigurasi sedemikian
rupa memunculkan kotak login dan
password ketika user mengakses server
web. Dengan cara seperti ini maka hanya
user tertentu saja yang berhak
menggunakan internet. Inilah yang
disebut autentikasi
Squid memerlukan program eksternal
dan mendukung beberapa metode
authentication seperti NCSA, LDAP,
PAM, YP, SMB, dan lainnya. Masing-
masing metode memerlukan penjelasan
lebih lanjut. Pada penulisan ini penulis
hanya akan dijelaskan metode
authentication menggunakan NCSA.
Inilah metode yang paling umum
sekaligus paling mudah dikonfigurasi.
NCSA dapat membaca file password
(lazim disebut flat file). Tapi NCSA
tidak dapat membaca file /ect/passwd.
NCSA hanya dapat membaca file
password yang dibuat menggunakan
utilitas Apache (httpd). J adi, username /
password login linux tidak ada sangkut
pautnya dengan username / password
squid.
3.1.1 Membatasi akses situs
Pornografi menjadi salah satu persoalan
bagi penbgguna internet cukup banyak
situs internet yang memaasang gambar-
gambar, film, dan materi pornografi.
Squid dapat digunakan untuk memfilter
situs-situs semacam ini. Ada beberapa
tehnik yang bisa diterapkan agar squid
dapat memblok situs tertentu, antara lain
:
Penyaringan berdasarka URL yang
sudah diketahui domainnya. Ada
beberapa situs porno yang sudah
terkenal, seperti playboy.com,
penthouse.com, asiangirls.com,
nudecelebs.com, dan masih banyak
lagi. Kita dapat menggunakan
acltype dstdomain, sebagai berikut :
acl porn_domain dstdomain
www.playboy.com penthouse.com
http_access deny porn_domain.
Apabila daftar domain cukup
banyak, sebaiknya gunakan file
eksternal. Misalkan saja daftar
domain disimpan dalam file bernama
/ ect/squid/porn_domain.txt yang
isinya sebagai berikut :
Playboy.com
Penthouse.com
Asiangirls.com
Nudecelebs.com
Kemudian lakukan modifikasi pada
squid.conf.
Acl porn_domain dstdomain
/ect/squid/porn_domain.txt
http_access deny porn_domain
Setiap kali ada situs porno baru, kita
cukup menambahkannya pada file
porn_domain.txt saja
Cara maka dia bisa mengetikkan IP
address-nya pada browser. Dengan
demikian, kita perlu melakukan
blokade IP address selain
domainname. Menemukan IP
address dari suatu situs dapat
dilakukan dengan beberapa utilitas,
seperti ping, nslookup, dan utilitas
lain. Sebaiknya gunakan file teks
yang berisi daftar sekumpulan IP
address. Misalkan nama file-nya
adalah /ect/squid/porn_ip.txt
dengan isi sebagai berikut :
209.247.228.203
209.247.228.201
206.251.29.35
Pada squid.conf tambahkan argumen
berikut :
Acl porn_domain dstdomain
/ect/squid/porn_domain.txt
Acl porn_ip dst /ect/squid/porn_ip.txt
http_access deny porn_domain
http_access deny porn_ip
Adakalanya sulit bagi kita
menemukan daftar IP address atau
domain name semua situs porno
yang ada di dunia. Sehingga kita
perlu melakukan penyaringan
berdasarkan isi atau kata-kata
tertentu. Misalkan saja kita bisa
memblok semua situs yang
dicurigai mengandung kata sex,
nude, porno, telanjang, bugil, dan
kata-kata lainnya. Buatlah sebuah
file yang berisi daftar kata-kata
tertentu, misalkan diberi nama
/ect/squid/kata_terlarang.txt isinya
sebagai berikut :
Porno
Bugil
Wts
Pelacur
Phorno
Nude
Lesbi
Xxx
Homo
Sex
Telanjang
Rape
Pada squid.conf tambahkan
argumen berikut :
acl porn_domain dstdomain
/ect/squid/porn_domain.txt
acl porn_ip dst
/ect/squid/porn_ip.txt
acl kata_terlarang url_regex i
/ect/squid/kata_terlarang.txt
http_access deny porn_domain
http_access deny porn_ip
http_access deny kata_terlarang


PEMBAHASAN
Analisi Masalah
Tujuan utama dari pembuatan proxy
server ini ialah untuk memberikan akses
internet yang sehat dan aman dimana
penulis akan memanfaat aplikasi squid
dari linux yang merupakan aplikasi
opensource yang sudah termasuk paket
dari system operasi Linux Ubuntu 9.10
dan beberapa aplikasi penunjang lainnya
untuk bisa dimanfaatkan dari segi efisien
biaya dan waktu.
Fungsi dasar dari dari sebuah proxy
ialah metode penyimpanan cache
pada server terhadap hasil
permintaan setiap url yang masuk
sehingga dapat mempercepat dalam
hal browsing internet.
Dalam segi biaya pembuatan Proxy
ini sangat efisien dibandingan
dengan pembuatan proxy server
dimana untuk pembuatan server
dapat dibuat dengan server rakitan
seperti halnya yang dibuat oleh
penulis.
Fungsi lain yang dapat di
manfaatkan dari sebuah aplikasi
squid proxy ialah proses filtering,
proses filtering yang digunakan pada
bahasan kali ini ialah filtering
berdasarkan MAC address, dimana
Mac Address merupakan identitas
dari NIC yang bersifat unik dan
berbeda-beda dengan NIC lain,
sehingga dapat digunakan sebagai
pengenal dan pembeda komputer
dalam suatu jaringan local
Fungsi lain yang dapat diterapkan
ialah proses autentikasi yang dapat
dibuat pada aplikasi squid sehingga
dapat di bedakan dan tujuan
pengguna yang tepat pada pemakaian
proxy tersebut
Dan sebagai fungsi keamanan
lainnya pada squid proxy ini dapat
melakukan proses filtering terhadap
port-port tertentu yang biasa
disesuaikan dengan kebutuhan server
yang dapat di bolehkan ataupun
tidak, namun dalam penulisan ini
penulis secara default membolehkan
terhadap port-port yang terdaftar dan
memblok semua port yang tidak
terdaftar pada squid.
Analisi Input
Segala permintaan berdasarkan url
ataupun pencarian kata yang melalui
port 80 akan di redirect pada aplikasi
squid yaitu port 3128. segala aktifitas
browsing setiap klien akan tercatat pada
log yang kemudian dapat di generate
pada laporan squid sehingga semua
aktifitas browsing user terus tercatat
pada log. Berikut tampilan dari daftar
access control yang ada pada jaringan
yang penulis bangun

Gambar Tampilan Daftar Akses
Kontrol
Analisis Proses
Setiap permintaan yang diproses oleh
squid dalam hal ini sebuah alamat web
site akan disimpan cache dari masing-
masing web site yang dibuka, sehingga
memungkinan untuk setiap permintaan
ulang dapat di respon dengan cepat pada
browser klien
Walaupun proses browsing akan
disesuaikan dengan fungsi pengguna
pada konfigurasi proxy, namun dari
setiap filtering yang dapat di tetapkan
untuk seorang pengguna, filterting situs
porno akan berlaku pada setiap fungsi
pengguna, berikut contoh tampilan dari
halaman penolakan

Gambar halaman blok untuk
pencarian berdasarkan Pencarian
kata

Gambar Halaman Penolakan
Berdasarkan url
Analisis Output
Berdasarkan kontrol dari filtering squid
maka pengguna hanya dapat melakukan
browsing sesuai dengan aturan yang
telah ditetapkan pada squid proxy
apabila ada penyimpangangan
penggunaan akan langsung di redirect
pada halaman penolakan, sehingga saran
tujuan dari penggunaan dapat sesuai
dengan fungsi pengguna yang tentunya
disesuaikan dengan daftar filter yang
ada. Berikut daftar dari kategori filtering
yang dapat dilakukan pada squid proxy,
diantaranya ialah :
advertise
aggresive
alcohol
automobile
chat
costtraps
dating
downloads
drugsdynamic
education
finance
fortunetelling
forum
gamble
goverment
hacking
hobby
homestyle
hospitals
imagehosting
isp
jobsearch
library
military
models
movies
music
news
podcasts
politics
porn
radiotv
recreation
redirector
religion
remotevontrol
ringtones
science
searchengine
sex
shopping
socialnet
spyware
tracker
updatesites
violence
warez
weapons
webmail
webphone
webradio
webtv

Squid Analysis Report Generator
Untuk laporan dari penggunaan squid
dapat dilihat menggunakan sarg dimana
pada halaman depan dari sarg akan
terlihat berdasarkan periode tanggal dari
log penggunaan squid proxy, berikut
tampilan dari halaman depan sarg


Gambar Tampilan Awal Sarg

Pada setiap file log per periode tertentu
dapat ditampilkan pada grafik maupun
table dan berdasarkan topsite, pengguna,
besar atau banyaknya downloads,
penolakan ataupun kegagalan autentikasi


Gambar Periode Log Laporan

MRTG
Dan Untuk laporan trafik keseluruhan
dari jaringan internet dapat
menggunakan MRTG


Gambar 5.8 Tampilan MRTG

Grafik MRTG dapat dilihat berdasarkan
periode rata 5 menit, 2 jam, 1 hari, satu
minggu, 1 bulan dan 1 tahun. Berikut
tampilan dari periode rata 5 menit


Gambar Analisa Traffic Per 5 menit

Berdasarkan gambar hasil trafic maka
dapat disimpulkan untuk jaringan yang
dibuat masih mencukupi untuk
kebutuhan permintaan bandwitdh untuk
saat ini, apabila nanti diperlukan dapat di
perluas untuk penambahan permintaan
dari klien dari segi infrastruktur.

PENUTUP

Setelah melakukan perancangan dan
pembuatan, maka tugas akhir ini
mencapai tahap pengambilan
kesimpulan disertai pula dengan saran
bagi para peminat yang ingin
menyempurnakan program ini.

KESIMPULAN
Kesimpulan yang dapat ditarik pada
tugas akhir ini adalah sebagai berikut
1. Penggunaan server proxy dapat
menignkatkan kecepatan
browsing halaman website
2. Mampu diandalkan sebagai
filtering content, yang
disesuaikan dengan kebutuhan
pengguna internet
3. Lebih efisien dari segi biaya
karena dapat dibuat dengan
sepesifikasi minimum server
rakitan

SARAN
Penulis menyadari bahwa pembuatan
server ini masih jauh dari sempurna dan
masih banyak kekurangannya disana-
sini. Harapan penulis agar nantinya
teman-teman mahasiswa atau siapa saja
dapat memperluas dan mengembangkan
pembuatan server proxy ini.

DAFTAR PUSTAKA

Sofana, Iwan. 2010. Mudah Membangun
Server dengan Fedora,
Informatika, Bandung

Fiva, Rosalana. 2010. Langkah Mudah
Administrasi Jaringan Menggunakan
Linux Ubuntu 9. Semarang : Andi

Gofur, Abdul, Lely Yulaena, Mardiana
Cs. 2009. Panduan Praktis Debian GNU
/ Linux 3.1. J akarta : Dian Rakyat

Prabantini, Dwi. 2010. Administrasi
Jaringan Menggunakan Linux Ubuntu 7.
Semarang : Wahana Komputer