Searching...
February 25, 2014

Installing Squid LUSCA HEAD On BACKTRACK

Proxy. Banyak orang yang pernah mendengar hal ini namun tidak tau apa fungsinya. Singkatnya, proxy hanya penghubung dari client ke server. Gambarannya terlihat seperti ini.

Tanpa Proxy

Client -> [Give me Google Page] -> Google
Client -> [Google Page] -> Google

Keterangan:
1. Client meminta halaman google LANGSUNG ke google.
2. Google memberikan halamannya kepada client.

Dengan Proxy

Client -> [Give me Google Page] -> Proxy -> [Give me Google Page] -> Google
Client <- [Google Page] <- Proxy <- [Google Page] <- Google

Keterangan:
1. Client meminta halaman google kepada proxy
2. Proxy meminta halaman google yang diminta oleh client
3. Google memberikan halamannya kepada proxy
4. Proxy memberikan halaman yang diberikan google kepada client

Lalu apa keuntungan menggunakan proxy?

Kita buat sebuah kondisi seperti ini:
1. Anda mendapat respon ping google sebesar 400 ms. Ini berarti anda harus menunggu selama 400 detik sampai anda mendapat respon dari google. Hal ini terjadi bukan karena buruknya service dari google, melainkan DNS anda yang terlalu lama mencari domain google.
2. Sebuah proxy server mendapat respon dari google sebesar 53 ms. Ini berarti dibutuhkan waktu 53 ms bagi proxy server untuk mendapat respon dari google.
3. Anda mendapat respon 100 ms dari proxy server. Ini berarti bla-bla-bla. [You know what I mean, don't you? No?! Fuck then!]

Jika anda tidak menggunakan layanan proxy, anda akan membutuhkan waktu 4 detik untuk membuka halaman google. Jika anda menggunakan layanan proxy, anda akan membutuhkan waktu 1.5 detik untuk membuka halaman google.

Mengapa SQUID?

Kelebihan squid yang paling saya suka adalah penyimpanan cache sebuah halaman web nya yang baik. Cara kerjanya seperti ini.

Web Content:
1. Image
2. JS
3. Video
4. Text

Ketika anda berusaha memuat halaman web, secara otomatis anda akan memuat keempat elemen ini. Artinya jika anda meminta proxy untuk mengambil web content ini, proxy akan menyimpan keempat elemen ini dalam sebuah directory cache. Untuk apa? Tentu saja untuk dipanggil kembali.

First Request
Clent's requests:
1. Image
2. JS
3. Video
4. Text

Proxy Check Cache Directory:
1. Image [None]
2. JS [None]
3. Video [None]
4. Text [None]

Karena permintaan ini baru dilakukan sekali, maka proxy tidak menemukan elemen ini di dalam directory cache. Kemudian proxy meminta keempat elemen ini ke web server [dibutuhkan waktu 53ms]. Jika sudah, maka proxy akan menemukan keempat elemen ini di dalam directory cache, sehingga proxy tidak perlu meminta kembali keempat elemen [tidak butuh permintaan ke server = tidak butuh waktu = reload 0 detik].

Sudah siap memasang squid di dalam backtrack anda? Let's rock!

Dependencies:

1. squid
2. squidclient
3. squid-cgi
4. gcc
5. build-essential
6. sharutils
7. ccze
8. libzip-dev
9. automake1.9

Walkthrough:
1. Install dependencies

Command :
red-dragon [~]  apt-get update ; apt-get install squid squidclient squid-cgi gcc build-essential sharutils ccze libzip-dev automake1.9  --yes


2. Download Squid LUSCA HEAD Source

Command :
red-dragon [~]  cd /tmp/ ; wget "http://lusca-cache.googlecode.com/files/LUSCA_HEAD-r14809.tar.gz"


3. Extract source

Command :
red-dragon [/tmp]  tar -xvf LUSCA_HEAD-r14809.tar.gz

4. Configuring

Command :
red-dragon [/tmp]  cd LUSCA_HEAD-r14809 ; ./configure '--prefix=/usr' '--exec_prefix=/usr' '--bindir=/usr/sbin' '--sbindir=/usr/sbin' '--libexecdir=/usr/lib/squid' '--sysconfdir=/etc/squid' '--localstatedir=/var/spool/squid' '--datadir=/usr/share/squid' '--enable-async-io=24' '--with-aufs-threads=24' '--with-pthreads' '--enable-storeio=coss,aufs' '--enable-linux-netfilter' '--enable-arp-acl' '--enable-epoll' '--with-aio' '--with-dl' '--enable-snmp' '--disable-delay-pools' '--enable-htcp' '--enable-cache-digests' '--disable-unlinkd' '--enable-large-cache-files' '--with-large-files' '--enable-err-languages=English' '--enable-default-err-language=English' '--with-maxfd=65536' '--enable-removal-policies=lru' '--enable-removal-policies=heap' 'CFLAGS=-march=core2 -O2 -pipe -fomit-frame-pointer'

5. Compiling

Command :
red-dragon [/tmp/LUSCA_HEAD-r14809]  make

6. Installing

Command :
red-dragon [/tmp/LUSCA_HEAD-r14809]  make install


7. Setup SQUID

Command :
red-dragon [/tmp/LUSCA_HEAD-r14809]  cd /etc/squid ; wget "http://t193r.googlecode.com/files/squid.zip" ; unzip squid.zip

Password = red-dragon


8. Create cache directory

Command :
red-dragon [/tmp/LUSCA_HEAD-r14809]  cd / ; mkdir squid ; cd /squid ; mkdir log ; mkdir cache ; touch /squid/log/access.log; touch /squid/log/error.log ; chown -R proxy:proxy /squid


9. Parsing Squid Configuration

Command :
red-dragon [~]  squid -k parse


10. Generate Cache Directory

Command :
red-dragon [~]  squid -z


11. Run Squid

Command :
red-dragon [~]  squid -NDd1

Jangan tekan ctrl+c atau tutup terminal anda. Ini akan mengakibatkan squid berhenti. Cara lain untuk mengeksekusi squid adalah:

a. Tekan alt+f2
b. Masukan perintah "squid -NDd1" [Tanpa tanda petik]

12. Checking Squid

Dalam konfigurasi, saya mengatur squid untuk berjalan pada port 16791. Cek service squid dengan perintah

Command :
red-dragon [~]  netstat -lpnt | grep 16791

Jika muncul seperti ini, maka squid sudah berjalan, dan siap menerima request. Jangan lupa untuk mengatur proxy anda dengan

a. IP = 127.0.0.1
b. Port = 16791

Don't forget to share this page.

You
are
so
connected
by
red-dragon

4 comment:

Post a Comment

 
Back to top!