Wednesday, June 3, 2009

Gateway Ubuntu dengan firewall, transparent-proxy, dan filtering (part2)

..sebelumnya..

Simpan file konfigurasi squid Anda.

Tips:
Jika Anda memutuskan untuk hanya merubah sebagian saja dari file squid.conf asli, Anda dapat membuat sebuah file yang lebih 'manusiawi', yakni yang lebih mudah dibaca.

Ketikkan perintah ini di terminal:

grep -v "^#" /etc/squid/squid.conf | sed -e '/^$/d'

ATAU

sed ‘/ *#/d; /^ *$/d’ /etc/squid/squid.conf

ATAU

cat /etc/squid/squid.conf | sed '/ *#/d; /^ *$/d'

Hasil dari perintah tersebut kemudian dapat Anda isikan ke sebuah file lain untuk melakukan edit cepat. Cukup tambahkan perintah > /path/to/file di akhir salah satu perintah di atas.

Misalnya, penulis akan menyimpan file di home dengan nama fast-edit.squid.conf:

cat /etc/squid/squid.conf | sed '/ *#/d; /^ *$/d' > ~/fast-edit.squid.conf

Setelah menyimpan file squid.conf, kita akan membuat sebuah special user untuk squid; dalam contoh ini, namanya 'squid'.

Di terminal:

sudo adduser squid

Isikan password. Proses squid akan masuk ke user 'squid' dari 'root', jadi password tidak masalah.

Seperti yang telah disebutkan di tulisan sebelumnya, kita perlu membuat cron job di Ubuntu supaya squid merotasi file log-nya secara berkala.

Di terminal:

sudo crontab -e

Ketik 3 (pilih /bin/nano). Akan muncul tampilan seperti vim. Ketikkan baris berikut:

0 10 * * * /usr/sbin/squid -k rotate

Setiap item konfigurasi dipisahkan oleh spasi. Berikut penjelasaanya.
0 = menit, 0 menit
10 = jam, jam 10 a.m
* = date, * artinya setiap hari
* = month, * artinya setiap bulan
* = weekdays, * artinya setiap hari
/usr/sbin/squid -k rotate = perintah agar squid melakukan rotasi file log-nya

Simpan dengan menekan Ctrl+O, Enter untuk konfirmasi. Kemudian Ctrl+X untuk keluar.

Saat kita mengisi file squid.conf pada bagian acl else, kita membutuhkan dua file eksternal yang berisi list domain dan regex untuk memblok ads. Anda dapat mendapatkan isi yang lebih baik untuk kedua file ini dengan mencari di Google.

Contoh file /etc/squid/denied_domains.acl:

.facebook.com
.fbcdn.net


Contoh file /etc/squid/denied_ads.acl:

/adv/.*\.gif$
/[Aa]ds/.*\.gif$
/[Aa]d[Pp]ix/
/[Aa]d[Ss]erver
/[Aa][Dd]/.*\.[GgJj][IiPp][FfGg]$
/[Bb]annerads/
/adbanner.*\.[GgJj][IiPp][FfGg]$
/images/ad/
/reklame/
/RealMedia/ads/.*
^http://www\.submit-it.*
^http://www\.eads.*
^http://ads\.
^http://ad\.
^http://ads02\.
^http://adaver.*\.
^http://adforce\.
adbot\.com
/ads/.*\.gif.*
_ad\..*cgi
/Banners/
/SmartBanner/
/Ads/Media/Images/
^http://static\.wired\.com/advertising/
^http://*\.dejanews\.com/ads/
^http://adfu\.blockstackers\.com/
^http://ads2\.zdnet\.com/adverts
^http://www2\.burstnet\.com/gifs/
^http://www.\.valueclick\.com/cgi-bin/cycle
^http://www\.altavista\.com/av/gifs/ie_horiz\.gif


Berikutnya, kita perlu memastikan squid dapat mengakses semua file dan direktori yang ia butuhkan. Untuk itu kita akan mengubah owner dari semua direktori dan file tersebut menjadi 'squid'.


sudo chown -R squid /etc/squid/
sudo chown -R squid /usr/share/squid/
sudo chown -R squid /var/log/squid/
sudo chown -R squid /var/


Terakhir, kita perlu membangun cache untuk squid:

sudo squid -z

Untuk melakukan rekonfigurasi squid:

sudo squid -k reconfigure

ATAU

sudo /etc/init.d/squid restart


Cukup dulu untuk squid. Di tulisan berikutnya, kita akan melakukan kofigurasi firewall dengan iptables..

No comments:

Post a Comment