Sempat suatu hari saya dibikin penasaran oleh user yang browsing di lingkungan jaringan. Karena IP komputer miliknya tidak tercatat dalam log squid, jadi tidak bisa diamati ia browsing kemana saja. Setelah saya cek ternyata ia set browsernya agar saat ia browsing tidak melalui proxy. Kalau cuma 1 orang saja sih nggak masalah untuk merubah ulang settingannya, tapi kalau berpuluh-puluh komputer seperti itu kan rumit juga. Akhirnya dapat solusi juga dari milis, yaitu menggunakan transparent proxy. Konsepnya sih sederhana, yaitu memaksa koneksi internet user agar selalu melalui mesin proxy kita -dengan atau tanpa setting di menu browser-. Caranya adalah dengan menerapkan rule (baca aturan) pada firewall agar tiap kali ada permintaan membuka http atau https dari client akan langsung di arahkan ke mesin proxy.
Berikut setting firewall yang saya terapkan, kebetulan saya orang yang masih males dan belum sempat upgrade linux box saya, jadinya firewall yang digunakan masih ipchains (untuk kernel linux terbaru menggunakan iptables):
Seperti biasa, loginlah sebagai root terlebih dahulu. Saya asumsikan nomor ip proxy adalah 192.168.1.1
$ su
Ketikkan perintah berikut untuk menambahkan rule ke firewall agar user yang browsing ke internet di arahkan ke mesin proxy
# /sbin/ipchains –A input -s ! 192.168.1.1 -d ! 192.168.1.1 http -p TCP -j REDIRECT 3128
# /sbin/ipchains -A input -s ! 192.168.1.1 -d ! 192.168.1.1 https -p TCP -j REDIRECT 3128
Sedangkan rule berikut gunanya adalah untuk memastikan agar mesin proxy kita tidak dipakai orang luar
# /sbin/ipchains -A input -s ! 192.168.1.1 -d ! 192.168.1.1 8080 -p TCP -j REJECT
# /sbin/ipchains -A input -s ! 192.168.1.1 -d ! 192.168.1.1 3128 -p TCP -j REJECT
Set ulang konfigurasi squid agar mendukung transparent proxy
$ su
# vi /etc/squid/squid.conf
Tambahkanlah baris berikut kedalam konfigurasi squid (file squid.conf)
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
No comments:
Post a Comment