Anda di halaman 1dari 6

Udah gak pada asing kan dengan software proxy yang satu ini… saya juga tentunya

mengimplementasikannya dalam jaringan saya… Tulisan ini sengaja dibuat untuk saya sendiri pada
khususnya karena sifat yang suka lupa dengan konfigurasi-konfigurasi sistem maupun jaringan saya
pernah saya buat jadi ntar klo sewaktu-waktu lupa kan sudah ada log-nya

Saya donwload squidnya disini nech…

wget http://www.squid-cache.org/Versions/v2/2.6/squid-2.6.STABLE17.tar.gz

trus extrak pada directrory /usr/local

tar -zxvf squid-2.6.STABLE17.tar.gz /usr/local


cd /usr/local/squid-2.6.STABLE17

samapi sini tinggal di konfigure dulu dech supaya fitur-fitur yang akan digunakan bisa diaktifkan
selesai intall.

# ./configure –prefix=/usr/local/squid –sysconfdir=/etc/squid \


–enable-gnuregex –enable-async-io=24 –with-aufs-threads=24 \ –with-pthreads –with-aio –with-dl
–enable-storeio=aufs,diskd \ –enable-removal-policies=heap –enable-icmp \
–enable-delay-pools –disable-wccp –enable-snmp \
–enable-ssl –enable-cache-digests –enable-poll \
–enable-linux-netfilter –disable-ident-lookups \
–disable-hostname-checks –enable-underscores \
–enable-cachemgr-hostname=localhost

wew panjang amat tapi gak apa-apa dech… lanjut…

Sekarang lanjutkan untuk mengcompile packagte source squid tadi dan meng-installnya dalam
BOX Slackware (distro lain sama aza caranya)

make && make install

sampai saat ini squid udah bertongol di BOX Slackware dan yang perlu di lakukan dan menjadi
sangat penting adalah mengkonfigurasinya sesuai kebutuhan jaringan kita. walah… walah…

sebagai contoh konfigurasi squid yang saya gunakan :

[BOF]

http_port 8080 transparent


icp_port 3130

hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY

#default 8 Mb (kemungkinan maksimal pengunaan 3x lipat nilai yang digunakan)


cache_mem 16 MB
cache_swap_high 100%
cache_swap_low 80%
# Maximum besar objek yang akan di cache ke HD & Memory
#
maximum_object_size 128 MB
maximum_object_size_in_memory 16 KB

# Cache replacement & Memory replacement


#
# Bagian ini adalah metode swapping data dari memory ke cache hd. LFUDA
# brarti menyebabkan squid akan men-cache obyek2 berukuran besar,
# sebaliknya GDSF men-cache obyek2 kecil secara progresif. Saran saya
# cache hd menggunakan LFUDA dan cache memory menggunakan GDSF karena
# pembacaan/penulisan ke memory (RAM) jelas lebih cepat daripada hd.
cache_replacement_policy heap LFUDA
memory_replacement_policy heap GDSF

#cahce DNS
fqdncache_size 4096
log_fqdn off

#directory cahce (disesuaikan saja lah)


cache_dir aufs /var/spool/squid 2048 16 256

#cache_access_log
cache_access_log /var/log/squid/access.log

cache_log none
cache_store_log none
log_icp_queries off

#user yang menjalankan squid


cache_effective_user squid
cache_effective_group squid

mime_table /etc/squid/mime.conf
pid_filename /var/run/squid.pid
debug_options ALL, 1

#define DNS dari ISP u !


dns_nameservers 202.134.0.155
# Refresh Rate
#
# Ini adalah bagian yg sering diutak-atik karena menyangkut lamanya
# sebuah obyek dicatat dalam cache (hd). Cari nilainya secara
# trial n error karena tidak ada angka pasti. Urutannya adalah:
#
# refresh_pattern REGEX MIN_MINUTES VALIDITY( % ) MAX_MINUTES
#
# REGEX : silakan liat dokumentasi squid untuk lebih lengkapnya.
# MIN_MINUTES: umur minimum dalam menit sebuah obyek berada dalam cache
# sebelum akan diganti dng obyek yg sama yg lebih baru.
# VALIDITY( % ): tingkat validitas obyek dalam cache jika dibandingkan
# dengan obyek asli dari server. Semakin kecil angkanya
# maka squid akan semakin mempercepat proses refreshing obyek.
# Semakin besar angkanya maka semakin lama obyek berada dalam
# cache yg dalam beberapa kasus dapat menyebabkan sebuah
# halaman web tidak berubah jika dilihat dari client.Beban
# trafik harus diperhatikan dalam mempertimbangkan angkanya.
# MAX_MINUTES: umur maksimum obyek dalam cache sebelum obyek dihapus jika
# obyek tidak direfresh.
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i \.gif 4320 95% 129600 override-lastmod reload-into-ims
refresh_pattern -i \.jpg 4320 95% 129600 override-lastmod reload-into-ims
refresh_pattern -i \.tif 4320 95% 129600 override-lastmod reload-into-ims
refresh_pattern -i \.png 4320 95% 129600 override-lastmod reload-into-ims
refresh_pattern -i \.jpeg 4320 95% 129600 override-lastmod reload-into-ims
refresh_pattern ^ftp: 4320 95% 129600 override-lastmod reload-into-ims
refresh_pattern -i . 0 50% 129600 override-lastmod reload-into-ims

acl all src 0.0.0.0/0.0.0.0


acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255

# sesuaikan dengan network jaringan


acl INTRANET src 10.10.1.0/24
acl to_localhost dst 127.0.0.0/8

acl SSL_ports port 443 563


acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

# untuk nge-block site terlarang


acl bad url_regex “/etc/squid/squid-block.acl”

http_access deny bad


http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

no_cache deny QUERY


http_access allow INTRANET
http_access deny all
http_reply_access allow all
icp_access deny all
cache_mgr admin@ict.xborneo.net
visible_hostname proxy.xborneo.net

negative_ttl 2 minutes

#Beberapa klien dapat membatalkan koneksi TCP nya, dengan membiarkan bagian penerimaaannya
terbuka.
#Kadang-kadang squid tidak dapat membedakan antara koneksi TCP yang half-closed dan full-
closed.
#Defaultnya, koneksi half-closed tetap terbuka sampai pembacaan dan penulisan pada soket
memunculkan pesan error.
#Ubahlah nilai ini ke off, maka squid dengan serta merta akan menutup koneksi client jika tidak ada
data yang dibaca lagi.
half_closed_clients off

coredump_dir /var/spool/squid
deny_info ERR_ACCESS_DENIED bad

#Jika ada error, jangan panik, carilah letak kesalahan dengan selalu memonitor log. $ tail -f
/var/log/messages

[EOF]

Oke sekarang apa lagi yach yang musti dilakuin… em… wokeee dech… sekarang udah ingat…

Dalam file konfigurasi squid.conf tadi ada directory-directory yang akan digunakan oleh squid
sebagai tempat cache (/var/spool/squid) dan juga sebagai tempat menyimpan file log terhadap akses
yang menuju squid (/var/log/squid/access.log) selain itu ada juga file yang harus dibuat sebagi
squid.pid dalam directory /var/run/ . Jika udah semua, jangan lupa untuk membuat user dan group
“squid” yang akan menjalankan dan memelihara squid nantinya. emm` ada lagi gak yach … ???
kayaknya udah dech becand… bacanda… emang nech gak pernah serius klo mau bikin log
dokumentasi

Yang pertama dilakuin… em buat dolo dech user ama group squid-nya :

groupadd squid
useradd -c “SQUID PROXY CACHE” -d /dev/null -s /bin/false -g squid squid

Membuat directory tempat cache dari squid :

mkdir /var/spool/squid
chown -R squid.squid /var/spool/squid

Membuat file squid.pid :

touch /var/run/squid.pid
chown -R squid.squid /var/run/squid.pid

Membuat directory untuk tempat besemayamnya file log access-nya squid :


mkdir /var/log/squid
touch /var/log/squid/access.log
chown -R squid.squid /var/log/squid/access.log

nah semua persiapan udah terlaksan… siap untuk menjalankan squid boss… wokehhh…
laksanakan… siaaaap…

Sebelum menjalankan squid ada tahapan yang kudu kita lakuin dulue…

Perintah ini hanya perlu dijalankan satu kali saja ketika squid pertama kali akan dijalankan pada
komputer firewall atau router.

/usr/local/squid/sbin/squid -z

Jika keluar message seperti :

2007/09/20 14:10:22| Creating Swap Directories

Dan langsung masuk ke konsole lagi tanpa keterangan error berarti pembuatan swap udah
berhasil… berhasil… berhasil… (kayak dora aza) Oke… bisa dilihat di dalam direktori
/var/spool/squid akan terbentuk beberapa direktori random yang terdiri dari angka angka ajaib
bener khan…

Tahap selanjutnya, Cek dulu konfigurasi squid sudah benar atau belum

/usr/local/squid/sbin/squid -k parse

Jika tidak ada pesan error berarti semua konfigurasi squid udah bener nech assssik…

Dan yang terakhir adalah menjalankan squid-nya donk…

/usr/local/squid/sbin/squid -D

sampai sini yakin squid udah running, mau lebih jelasnya silahkan cek :

ps -x | grep squid

pastikan squidnya udah running wokeeeeh….

Apa udah selesai sekarang… ?

Untuk urusan squid sekarang udah selesai dan yang perlu digaris bawahi adalah squid dijalankan
pada mode transparent menggunakan port 8080. jika tidak dijalankan pada mode transparent maka
kita harus mensetting pada masing-masing browser client/user dalam jaringan untuk diarahkan ke
squid sebelum akses langusng ke internet… klo user-nya cuman 1-10 seh masih mending…
kebayang gak klo user dalam jaringan kita se-gede jaringan dalam sebuah sekolah, univeristas atau
perusahaan mungkin yang memiliki PC client/user sebanyak ratusan unit bahkan ribuan… masih
mau setting satu-satu pada masing-masing browser user ? capee` decc…

Dengan Transparent proxy semua user dalam jaringan di belakang proxy akan dipaksa untuk
melewati proxy sebelum bisa akses ke luar (baca : internet) jadi nantinya management jaringan
berada dalam genggaman squid proxy dan yang menggenggam squid proxy adalah Admin Jaringan
mudah-mudahan adminya gak kejam-kejam amat yach…

Oke… karena pada konfigurasi squid menggunakan mode transparen pada port 8080 maka disini
hanya perlu untuk membuat direct dari port 80 (http) ke port 8080 (transparent proxy)

iptables -t nat -A PREROUTING -i eth1 -p tcp –dport 80 -j REDIRECT –to-port 8080

*catatan : eth1 adalah interface yang terhubung ke jaringan INTRANET

Akhirnya selesai juga dech…

Selamat Menikmati squid baru Anda !!!

Masuk kategori Slackware.

Anda mungkin juga menyukai