Squid adalah program Proxy Server yang tersedia secara opensource yang sangat banyak kegunaannya. Salah satunya adalah melakukan cache terhadap konten dari sebuat website. Jadi apabila sebuah situs pernah dibuka oleh salah satu anggota jaringan, maka Squid akan menyimpan konten situs tersebut kedalam Harddisk atau memori dari komputer. Sehingga jika salah satu anggota jaringan membuka situs yang sama, anggota jaringan tersebut tidak perlu mengakses internet. Dia hanya perlu mengakses cache yang sudah disimpan oleh Squid tadi, yang berakibat proses dalam membuka situs akan menjadi lebih cepat dan tentunya akan menghemat Bandwidth.
Instalasi dan Konfigurasi Squid di Ubuntu Server
Untuk dapat menggunakan Squid langkah yang dilakukan adalah:
Langkah Pertama
Login ke root dengan mengetik :
$sudo su
Masukkan password yang ada.
Masukkan CD OS LINUX Ubuntu Server
Mount dengan mengetikkan :
#apt-cdrom add
Langkah Kedua
Mengupdate repository di Ubuntu melalui internet dan CD OS Linux dengan mengetikkan :
#apt-get update
Menginstal Squid dengan cara mengetikkan :
#apt-get install squid
Langkah Ketiga
Konfigurasi Proxy Squid dengan ketentuan :
.Port proxy 3128 dengan mode transparent
.cache manager nama_anda@smk.sch.id
.block out site yaitu youtube.com dan facebook.com (sekedar contoh anda bisa mengganti yang lain)
Masuk ke folder squid yang telah kita install tadi dengan mengetik :
#cd /etc/squid
Buat file untuk menyimpan nama situs yang akan kita block dengan mengetik :
#nano bloksitus.txt
Kemudian isikan situs yang akan diblock, disini saya membuat dua situs.
.youtube.com
.facebook.com
Lalu simpan dengan menekan tombol ctrl+x, tekan Y, dan tekan Enter
Langkah keempat
Edit file konfigurasi Squid dengan mengetik :
#nano squid.conf(ingat posisi ada didalam folder squid)
Berikut ini yang perlu dikonfigurasi pada file squid.conf:
1. ACL untuk situs yang akan diblok pada sekitar baris ke 460.
# acl aclname dstdom_regex [-i] .foo.com.... #Destination server from URL
rubah menjadi seperti berikut
acl bloksitus dstdom_regex -i "/etc/squid/bloksitus.txt"(hilangkan tanda #)
2. ACL untuk jaringan LAN, terletak pada sekitar baris ke 610
# acl localnet src 192.168.0.0/16 #RFC1918 possible internal network
rubah menjadi seperti berikut
acl lan src 192.168.3.100/24(hilangkan tanda #, IP pada Eth1/ IP yang ke Client)
3. Menambah perintah untuk memblok ACL situsblok dengan menambahkan satu baris dibawah baris ke 655
http_access allow manager localhost
http_access deny manager
http_access deny bloksitus
4. Menambahkan perintah untuk memperbolehkan akses ke web dengan menambahkan satu baris dibawah baris ke 675
#http_access allow localnet
http_access allow localhost
http_access allow lan
5. Menambahkan port number untuk proxy dengan menambahkan satu baris dibawah baris ke 1110
#Squid normally listens to port 3128
http_port 3128 transparent
6. Mengganti cache manager, anda dapat menggunakan kombinasi CTRL+W untuk mencari string cache_mgr yang terletak pada baris ke 3340
#Default:
#cache_mgr webmaster
menjadi
cache_mgr nama_anda@smk.sch.id
7. Menambahkan Visible Hostname pada sekitar baris ke 3400
#TAG: visible_hostname
visible_hostname nama_komputer_anda
(nama komputer pada saat menginstall)
Simpan semua konfigurasi dengan menekan tombol ctrl+x, tekan Y, dan tekanEnter
Langkah Kelima
Restartlah daemon squid dengan mengetik :
# /etc/init.d/squid restart
kemudian cek keberhasilan konfigurasi (debugging) dengan menggunakan perintah:
#squid -D
#squid -d-D
#squid -z
#squid -k reconfigure
Langkah Keenam
Membuat sebuah rule yang akan membelokkan setiap koneksi ke port 80 agar dialihkan ke port 3128-TCP yang telah dikonfigurasi pada SQUID sebelumnya dengan mengetik perintah:
#nano /etc/rc.local
Kemudian ketikkan perintah dibawah ini diatas exit 0
#iptables -t nat -A PREROUTING -s 192.168.3.100/24 -p tcp --dport 80 -j REDIRECT --to-ports 3128
(192.168.3.100/24 adalah IP pada Eth0 / IP LAN yang ke Client)
Kemudian restartlah daemon yang telah dikonfigurasi seperti squid, iptables, dan networking
# /etc/init.d/squid restart
# /etc/init.d/networking restart
#iptables -t nat -L