Sampai tulisan ini saya buat, datatabase-nya memiliki puluhan kategori. Panduan instalasi dan konfigurasinya secara lengkap dapat ditemukan di situs resmi squidGuard. Kenapa saya membuat hal ini? Permasalahan bahwa situs yang terdaftar dalam blacklist manual sangatlah terbatas, dan saya melihat ada program open source yang sangat bagus dan biasanya disandingkan dengan squid, so saya mencobanya… Dan ternyata setelah berhasil, rasanya terasa nyaman dan menyenangkan. squidGuard sudah membantu pekerjaan saya. hehe…
Langkah-langkah yang saya lakukan adalah:
- Instalasi SquidGuard
- Instalasi Database Blacklist
- Konfigurasi SquidGuard
- Integrasi squidGuard ke Squid
1. Instalasi SquidGuard
Untuk menginstalasi SquidGuard anda membutuhkan software pendukung seperti:
- Squid
- Bison
- Flex
- Berkeley DB. Di Ubuntu biasanya sudah terinstal Berkeley DB untuk xserver.
Siapkan Squid. Cara install squid dapat dilihat disini.
Siapkan Bison dan Flex
# apt-get install bison flex
Untuk install Berkeley DB
# apt-get install libdb4.8-dev
Ambil source code SquidGuard dari
http://www.squidguard.org/download.html
Buka source code squidGuard
# tar zxvf squidGuard-1.4.tar.gz
Compile
# cd squidGuard-1.4 # ./configure --with-squiduser=proxy # make
Jika tidak ada error maka squidGuard terinstalasi di /usr/local/. Pilihan lain untuk melakukan ./configure. Jika squidGuard di instal di directory lain,
# ./configure --prefix=/some/other/directory
Jika BerkeleyDB tidak berada di /usr/local/BerkeleyDB
# ./configure --with-db=/directory/of/BerkeleyDB/installation
atau, misalnya,
# ./configure --with-db=/usr/local/BerkeleyDB.4.6/
Install squidGuard
# make install
Akan keluar message berikut
Installing squidGuard Done. Installing configuration file Created directory /usr/local/squidGuard/db Assigned /usr/local/squidGuard/db to user proxy Created directory /usr/local/squidGuard/log Assigned /usr/local/squidGuard/log to user proxy Copied sample squidGuard.conf /usr/local/squidGuard/squidGuard.conf is now readable The initial configuration is complete.
Congratulation. SquidGuard is sucessfully installed.
2. Instalasi Database Blacklist
Download Database Blacklist disini. Copy file blacklist tersebut ke directory blacklist defaultnya di
/usr/local/squidGuard/db
Pastikan anda mempunyai permission untuk menulis ke directory tersebut, lakukan, # cp /path/to/your/blacklist.tar.gz /usr/local/squidGuard/db # cd /usr/local/squidGuard/db # gzip -d blacklist.tar.gz # tar xfv blacklist.tar
Contoh struktur Directory di
/usr/local/squidGuard/db
drwxr-sr-x 17 proxy staff 4096 Feb 16 12:49 . drwxr-sr-x 4 root staff 4096 Feb 16 12:51 .. drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 ads drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 aggressive drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 audio-video drwxr-sr-x 2 proxy staff 4096 Feb 16 12:49 blacklists drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 drugs drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 gambling drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 hacking drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 mail drwxr-sr-x 2 proxy staff 4096 Feb 16 12:50 porn drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 proxy drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 redirector drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 spyware drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 suspect drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 violence drwxr-sr-x 2 proxy staff 4096 Feb 16 12:44 warez
Sekarang blacklist siap digunakan
3. Konfigurasi SquidGuard
Konfigurasi Default SquidGuard ada di
/etc/local/squidGuard/squidGuard.conf
Konfigurasi yang paling sederhana hanya satu kategori, satu aturan untuk semua.
# # CONFIG FILE FOR SQUIDGUARD #
dbhome /usr/local/squidGuard/db logdir /usr/local/squidGuard/logs
dest porn { domainlist porn/domains urllist porn/urls }
acl { default { pass !porn all redirect http://localhost/block.html } }
Jika kita memilih lebih dari satu kategori untuk di blok dapat menggunakan contoh berikut,
dest adv { domainlist adv/domains urllist adv/urls } dest porn { domainlist porn/domains urllist porn/urls } dest warez { domainlist warez/domains urllist warez/urls }
ACL yang kita gunakan sebagai berikut
acl { default { pass !adv !porn !warez all redirect http://localhost/block.html } }
Kita juga dapat melakukan whitelist (lawannya blacklist) melalui konfigurasi berikut
dest white { domainlist white/domains urllist white/urls }
acl { default { pass white !adv !porn !warez all redirect http://localhost/block.html } }
Sebelum di aktifkan, kita perlu menginisialisasi blacklist, mengkonversikan file text blacklist menjadi file database agar mempercepat proses cek dan blocking. Proses inisialisasi menggunakan perintah
# squidGuard -dC all # chown -R <squiduser> /usr/local/squidGuard/db/*
Harusnya anda akan melihat di log kira-kira message berikut,
2011-02-16 12:16:14 [31977] squidGuard 1.4 started (1138533256.959) 2011-02-16 12:16:14 [31977] db update done 2011-02-16 12:16:14 [31977] squidGuard stopped (1138533374.571)
4. Integrasi squidGuard ke Squid
Pastikan file blacklist dan db dimiliki oleh user squid. Jika squid tidak bisa akses maka proses blocking tidak jalan.
Test squidGuard
# echo "http://www.music.com 192.168.0.233/ - - GET" | squidGuard -c /usr/local/squidGuard/squidGuard.conf -d
Yang berwarna merah itu ip server dimana squidGuard diinstallJika berjalan dengan baik & situs example.com bukan situs yang di block maka akan tampak pada log
2007-03-25 16:18:05 [30042] squidGuard ready for requests (1174832285.085) 2007-03-25 16:18:05 [30042] squidGuard stopped (1174832285.089)
Masukan squidGuard ke squid.conf, perhatikan baik-baik path yang digunakan harus sesuai dengan yang anda gunakan,
redirect_program /usr/local/bin/squidGuard -c /usr/local/squidGuard/squidGuard.conf redirect_children 10
Sumber: squidGuard Documentation
.
0 comments:
Post a Comment