Didalam kita
melakukan browsing, sering kali kita mendapati bahwa website yang kita tuju
dialihkan ke sebuah website lain yang biasanya bertuliskan “Website yang anda
tuju tidak sesuai dengan peraturan perundang-undangan yang berlaku” ataupun
juga bila kita salah menuliskan nama domain dari website tersebut maka kita
akan dikirim ke suatu portal. Beberapa ISP kerap melakukan hal ini, dan dibalik
dari ini semua membutuhkan sebuah server yang disebut server proxy.
Server proxy ini
terletak di sisi ISP, berada ditengah-tengah client dan juga Internet Gateway.
Untuk jelasnya dapat dilihat pada figur berikut:
Di lingkungan
Debian, kita dapat memanfaatkan beberapa aplikasi web proxy dan yang paling
populer ialah Squid Proxy.
Instalasi squid
server cukup mudah, dan merupakan salah satu aplikasi server proxy yang robust
dan dapat dikonfigurasi untuk banyak kegunaan. Namun beberapa parameter pada
settingan squid server tidak tersedia secara jelas pada wiki-nya sehingga harus
banyak melakukan eksperimen dan pencarian lebih lanjut
Pada artiikel
kali in, kita akan banyak membahas parameter-parameter dari konfigurasi squid
server. Agar mudah, saya membuat beberapa contoh kasus yang berbeda sehingga
dapat memahami kasus-kasus dalam parameter setting yang berbeda pula.
Tahap pertama,
Paket Squid harus diinstall terlebih dahulu dengan mengetikkan perintah
apt-get install squid
dan diikuti dengan memasukkan CD debian 2 yang dibutuhkan untuk proses instalasi.
apt-get install squid
dan diikuti dengan memasukkan CD debian 2 yang dibutuhkan untuk proses instalasi.
Sekarang, squid
siap dikonfigurasi.
Agar mudah, dibawah terdapat soal kasus yang mudah :) dan penyelesaiannya.
Case:
Administrator
sebuah Jaringan dengan client sejumlah 10 orang akan menggunakan squid server
Tujuan utama menggunakan proxy ialah memblokir website yang tidak sesuai dan membatasi akses beberapa client.
Website yang diblokir antara lain: situs chatting sun.com dan search
engine di bing.com. Agar mudah, IP local jaringan ini diset 192.168.10.0/24.
Masing-masing user memiliki alamat IP yang berbeda. khusus 4 IP urutan awal
yang merupakan petugas penginputan data tidak diperkenankan mengakses internet
dengan alasan keamanan namun dapat mengakses 192.168.10.1. 2 user selanjutnya yang merupakan Sales Representative
hanya dapat mengakses ke sosial media facebook.com dan twitter.com. Alokasi
dari sisanya memiliki akses internet biasa.
Penyelesaian:
Mari kita
pecahkan penjelasan panjang tersebut dengan poin-poin sebagai berikut:
- Ada filtering website secara global : sun.com ; bing.com
- IP lokal jaringan 192.168.10.0/24
- IP Webserver dan Squid 192.168.10.1
- Server Squid : 192.168.10.1
- Client 2-5 tidak memiliki akses internet, hanya dapat mengakses 192.168.10.1
- Client 6-8 hanya memiliki akses facebook.com ; twitter.com
- 8-10 memiliki akses internet, dan filtering website secara global tetap berlaku.
ACL
Dalam acl pendeklarasian aturan harus
sesuai sintak sebagai berikut:
acl <nama
acl(harus unik)> <jenis acl> <alamat IP/Argumen>
- Nama acl harus unik, dan sebaiknya tidak mengandung nama acl yang telah dideklarasikan secara default, seperti localnet, localhost, manager, Safe_Ports, dan lainnya.
- Jenis acl ada bermacam-macam sesuai fungsinya:
- src : Alamat Client lokal dalam bentuk IP
- dst : Alamat Host tujuan (Diluar jaringan lokal) dalam bentuk IP
- srcdomain : Alamat client lokal dalam bentuk URL
- dstdomain : Alamat Host tujuan dalam bentuk URL
- Alamat IP dapat berupa notasi CIDR seperti 192.168.1.0/24 ; dapat
juga berupa alamat IP host (192.168.1.1) ; dan juga range IP dengan aturan
<IP awal> - <IP akhir> (contoh 192.168.1.1-192.168.1.10)
HTTP_ACCESS
Penulisan sintak
http_access adalah sebagai berikut:
http_access <deny/allow> [!] <Nama ACL>
- deny artinya menolak akses dari acl tersebut, dan allow menerima akses dari acl tersebut.
- [!] (tanpa kurung siku) menegasikan(membalik-kan) apapun yang terset di field deny/allow. Maksudnya, jika didepan ditulis deny namun nama acl !testacl maka baris tersebut artinya acl dengan nama test_acl bernilai allow.
- Nama acl sesuai acl yang telah didefinisikan sebelumnya
Langkah konfigurasi Squid :
a)
Aturan-aturan (acl) harus di
definisikan terlebih dahulu pada bagian acl seperti jaringan
localnet(jaringan yang dialokasikan), filter website dengan dstdomain, dan scope
IP yang akan diberlakukan aturan.
b)
Setelah mendefinisikan nama dan
parameter seperti IP dan nama domain, maka aturan tersebut harus diatur pada
bagian http_access
Baris aturan di squid.conf :
Bagian ACL
Pada bagian localnet, kalian mungkin
melihat banyak baris yang sama tetapi memiliki IP CIDR yang berbeda,
baris-baris tersebut dapat dicomment saja dengan menambahkan ‘#’ (tanpa petik)
di depan setiap baris. Tinggalkan baris terakhir yang sudah terisi
192.168.0.0/16 dan ubah sesuai yang diinginkan.
acl localnet src 192.168.10.1-192.168.10.10
#custom
acl filterweb dstdomain .sun.com .bing.com
acl noinet src 192.168.10.2-192.168.10.5
acl cs src 192.168.10.6-192.168.10.8
acl csweb dstdomain .facebook.com
.twitter.com
Pada bagian http_access, sebaiknya letakkan
rule-rule dibawah baris comment
#INSERT YOUR OWN RULE(S) HERE TO ALLOW
ACCESS FROM YOUR CLIENTS
Walau kelihatan simpel, tetapi peletakan
rule http_access disini sebenarnya berpengaruh karena ada beberapa rule default
diatas baris ini yang mendefinisikan beberapa hal.
Bagian http_access
#INSERT YOUR OWN RULE(S) HERE TO ALLOW
ACCESS FROM YOUR CLIENTS
http_access deny filterweb
http_access deny noinet
http_access allow to_localhost
http_access deny cs !csweb
Berikut pesan yang muncul di browser client
dengan aturan yang diberlakukan:
Demikianlah yang saya bisa jelaskan pada artikel ini, jika ada pertanyaan dapat ditanyakan di kotak comment di bawah :) Thanks!


Tidak ada komentar:
Posting Komentar