Redirect Squid Proxy Server Linux dengan SquidGuard

On August 6, 2007, in Linux, Server, by FX. Eko Budi Kristanto - 12,594 views
Proxy Server Linux Fedora 6Saya baru teringat tulisan pertama saya tentang proxy server Linux menggunakan Squid. Kali ini saya ingin melanjutkannya dengan menuliskan pengalaman saya membuat proxy server yang berfungsi untuk: membatasi akses internet ke alamat tertentu menggunakan program redirect squidguard dan database-nya yang menampung jutaan situs dalam berbagai kategori. Sampai tulisan ini saya buat, datatabase-nya memiliki puluhan kategori. yang sangat bagus jika diterapkan di tempat saya, yang merupakan lembaga pendidikan. 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:
  1. Download dan instalasikan squidGuard pada sistem
  2. Download database squidGuard
  3. Membuat file konfigurasi untuk squidGuard di /etc/squid/squidGuard.conf
  4. Instal database squidGuard
  5. Menambahkan redirect squidGuard dalam konfigurasi proxy di /etc/squid/squid.conf
  6. Membuat script untuk memudahkan saya menjalankan squid dan squidGuard
  7. Jalankan proxy server
File konfigurasi squidGuard.conf yang saya gunakan isinya seperti berikut:
#
# CONFIG FILE FOR SQUIDGUARD
#
# Author By: fxekobudi@gmail.com
#
 
dbhome /var/squidGuard/blacklists
logdir /var/log/squidGuard
dest adv {
log        adv
domainlist    adv/domains
urllist        adv/urls
}
dest aggressive {
log        aggressive
domainlist    aggressive/domains
urllist        aggressive/urls
}
dest automobile {
log        automobile
domainlist    automobile/domains
urllist        automobile/urls
}
dest chat {
log        chat
domainlist    chat/domains
urllist        chat/urls
}
dest dating {
log        dating
domainlist    dating/domains
urllist        dating/urls
}
dest drugs {
log        drugs
domainlist    drugs/domains
urllist        drugs/urls
}
dest gamble {
log        gamble
domainlist    gamble/domains
urllist        gamble/urls
}
dest hacking {
log        hacking
domainlist    hacking/domains
urllist        hacking/urls
}
dest movies {
log        movies
domainlist    movies/domains
urllist        movies/urls
}
dest music {
log        music
domainlist    music/domains
urllist        music/urls
}
dest porn {
log        porn
domainlist    porn/domains
urllist        porn/urls
}
dest redirector {
log        redirector
domainlist    redirector/domains
urllist        redirector/urls
}
dest shopping {
log        shopping
domainlist    shopping/domains
urllist        shopping/urls
}
dest spyware {
log        spyware
domainlist    spyware/domains
urllist        spyware/urls
}
dest tracker {
log        tracker
domainlist    tracker/domains
urllist        tracker/urls
}
dest violence {
log        violence
domainlist    violence/domains
urllist        violence/urls
}
dest warez {
log        warez
domainlist    warez/domains
urllist        warez/urls
}
dest webradio {
log        webradio
domainlist    webradio/domains
urllist        webradio/urls
}
dest webtv {
log        webtv
domainlist    webtv/domains
urllist        webtv/urls
}
acl {
default {
pass !adv !aggressive !automobile !chat !dating !drugs !gamble !hacking !movies !music !porn !redirector !shopping !spyware !tracker !violence !warez !webradio !webtv all
redirect     302:http://localhost.localdomain/blacklist.html
}
}
Untuk yang di sekolah, saya arahkan redirect tersebut ke file buatan saya sendiri, dimana dalam file tersebut saya berikan peringatan bahwa pengunjung tidak diperbolehkan mengakses situs dan saya berikan pilihan beberapa situs yang baik dan layak untuk dikunjungi. format file-nya dalam html. saya beri nama blacklist.html. Setelah membuat file konfigurasinya, selanjutnya saya menambahkan direktive berikut ini agar squid membaca perintah untuk redirect squidGuard. Saya meminta squid untuk menjalankan anak proses squidGuard sebanyak 10, sesuai dengan kemampuan memory yang digunakan proxy. Maksud saya agar request terhadap situs tertentu yang masuk dalam database squidGuard segera dapat tertangani oleh anak-anak proses tersebut, selain karena jumlah client yang lumayan besar.
# unlinkd_program /usr/lib/squid/unlinkd
unlinkd_program /usr/lib/squid/unlinkd
 
# ---------------------------------
# Redirect program untuk squidGuard
# ---------------------------------
redirect_program /usr/bin/squidGuard
redirect_children 10
Berikut ini cara saya install database squidGuard: 1. File shallalist.tar.gz yang sudah saya download saya letakkan di direktory /tmp 2. Selanjutnya saya masuk direktory tersebut dan ekstrak file:
cd /tmp
tar -zxf shallalist.tar.gz
3. Untuk memudahkan menginstal squidguard, saya edit script yang diberikan pada situs squidguard dan saya sesuaikan dengan kebutuhan serta keadaan. Kesulitan awal saya saat itu adalah masalah permission file untuk log squidGuard. Jadi hati-hati dengan proses instalasinya dan selalu check dengan command tail -f /var/log/messages.
#!/bin/sh
#
# squidGuard blacklists - install script
# author by: fxekobudi@gmail.com
cd /tmp
# extract blacklists
tar -zxf shallalist.tar.gz
# hapus databases lama
# copy blacklists ke db home
rm -Rf /var/squidGuard/blacklists/*
cp -R /tmp/BL/* /var/squidGuard/blacklists
# hapus direktory kategori blacklists yang tidak digunakan
rm -Rf /var/squidGuard/blacklists/automobile
rm -Rf /var/squidGuard/blacklists/dynamic
rm -Rf /var/squidGuard/blacklists/finance
rm -Rf /var/squidGuard/blacklists/forum
rm -Rf /var/squidGuard/blacklists/hobby/cooking
rm -Rf /var/squidGuard/blacklists/hobby/pets
rm -Rf /var/squidGuard/blacklists/isp
rm -Rf /var/squidGuard/blacklists/jobsearch
rm -Rf /var/squidGuard/blacklists/news
rm -Rf /var/squidGuard/blacklists/recreation
rm -Rf /var/squidGuard/blacklists/science
rm -Rf /var/squidGuard/blacklists/shopping
rm -Rf /var/squidGuard/blacklists/webmail
# buat direktory log squidGuard
#mkdir /var/log/squid/squidGuard
#chown squid.squid /var/log/squid/squidGuard/
chown squid.squid /var/log/squid/squidGuard/*
chown squid.squid /var/log/squid/squidGuard.log
# buat domains + urls db, kemudian rubah kepemilikan ke squid user
/usr/bin/squidGuard -C all
chown squid.squid /var/squidGuard/blacklists/*/*.db
chown squid.squid /var/squidGuard/blacklists/*/*/*.db
/sbin/service squid restart
rm -Rf /tmp/BL
(tulisan ini masih akan saya perbaiki)
Tagged with:  

15 Responses to Redirect Squid Proxy Server Linux dengan SquidGuard

  1. Dony Setyawan says:
    Firefox 1.0.7 Firefox 1.0.7 Windows XP Windows XP

    Salam kenal mas Eko,
    Saya sedang belajar setting squidguard berkat tulisan mas.
    Tapi sampai sekarang squidguard saya belum berhasil memblok sesuai database shallalist. Saya sudah ikutin sesuai website squidguard tentunya dengan perubahan sedikit karena saya menggunakan rpm dan RH 9.
    Di log squidguard sudah tidak ada lagi pesan error apapun.
    Sebelumnya banyak muncul pesan permission denied
    Bagian yang mana lagi yang harus diperiksa ya?
    Sekalian bertanya dibagian squid.conf mana saya harus meletakkan redirect_program squidguard diatas.

    Mohon bantuan/sarannya.
    Terima kasih sebelumnya.

    Dony S

    FX. Eko Budi Kristanto:
    Salam kenal juga Mas Dony…
    Apakah sudah dipastikan bahwa squidGuard sudah berjalan daemon-nya? coba check dengan command ps -A untuk melihat semua proses yang sedang berjalan. Trus lokasi direktori database shallalist di squidGuard.conf sudah di chek juga Mas? Dan untuk pesan error permission denied di atas, coba chek permission file log squidGuard, seharusnya squidGuard.log dapat ditulisi oleh user yang menjalankan squid (dalam konfigurasi saya, user dan group untuk permission direktori /var/log/squid/squidGuard dan /var/log/squid/squidGuard/squidGuard.log adalah squid Mas…)

  2. Dony Setyawan says:
    Firefox 1.0.7 Firefox 1.0.7 Windows XP Windows XP

    Trims atas tanggapannya mas

    dari command ps -A sudah terlihat 6 proses squidGuard sesuai perintah saya untuk membuat 6 anak proses di squid.conf. karena squid saya jalankan dari user root, saya mengabaikan fakta database squidguard dipegang root.
    Setelah saya coba mengganti user yang memiliki database squidguard dengan user squid baru terlihat fungsi blok situs berjalan sesuai yang diharapkan.
    Sayangnya ditempat saya situs detik.com kompas dsb justru tidak ingin diblok, sehingga database squidguard harus diedit kembali :-(

    Sekali lagi terima kasih banyak Mas Eko.

    Salam

    Dony

    FX. Eko Budi Kristanto:
    Sama-sama Mas…
    Tidak semua daftar situs blacklist di database shallalist sesuai dengan keinginan kita Mas, demikian juga yang saya alami, saya sering edit database (menambah dan mengurangi) saat menjumpai situs yang seharusnya boleh diakses malah masuk dalam daftar blacklist.

  3. khakim says:
    Firefox 1.5.0.10 Firefox 1.5.0.10 Windows Server 2003 Windows Server 2003

    Infonya sangat membantu sekali, tapi saya mau tanyakan ada nggak versi squidguard untuk windows. soalnya saya menggunakan squid for windows versi 2.6 stable 16.
    Jika ada mohon untuk dicantumkan sekalian linknya…
    Terima kasih.

    FX. Eko Budi Kristanto:
    Terima kasih informasinya Mas.. Ternyata ada squid for Windows ya. Saya malahan baru tahu lho. Hehe…
    Wah, kalau links-nya barangkali Googling saja Mas…

    • Deden Deni says:
      Firefox 3.6.3 Firefox 3.6.3 Windows XP Windows XP

      Mas, Salam kenal yua.
      Saya mau nanya nich. SquidGuard saya koq ga jalan yach ACL-nya.
      Saya pake Sentos5.
      Untuk Daemon dan squid sudah jalan.

      Deden

  4. ujang says:
    Internet Explorer 6.0 Internet Explorer 6.0 Windows XP Windows XP

    mas.. mau tanya kalo sharing internet di windows xp gmn? di kantor ada 2 jaringan, yang satu intranet, yang satu lagi internet.. saya mo coba gabungin, tp belum bisa-bisa. saya coba lihat di help-nya windos, katanya internet sharing gak bisa dilakukan di jaringan yng menggunakan dhcp. dan memang di jaringan intranet di kantor tuh pake dhcp. ada solusinya gak?

    FX. Eko Budi Kristanto:
    Jaringan Internet-nya pake apa Mas? DHCP servernya pake apa? jika sudah ada proxy, tinggal rubah saja konfigurasi di proxy yang juga dapat berlaku sebagai DHCP server.

  5. Jonny says:
    Firefox 2.0.0.5 Firefox 2.0.0.5 Windows XP Windows XP

    Mas FX yang terhormat,-

    Saya kagum dengan prestasi panjenengan, apalagi dengan banyaknya buku yang mas sudah tulis dan diterbitkan telah membantu banyak orang.

    Nah, apalagi saya berhasil menemukan situs pribadi mas FX ini, jadi tambah gembira hati saya jadi bisa tanya-tanya kapanpun dan dimanapun.

    Saya telah membaca ulasan mas FX tentang Squidguard di atas, dan memang menarik, tapi saat ini saya tengah menggunakan SafeSquid yang saya maksudkan selain agar bisa menjadi filter website juga bisa sebagai network monitoring serta access bandwith limitation pada Proxy server saya.

    Tapi setelah saya coba install dan ikuti petunyuk konfigurasinya di salah satu blog linuxer ternyata belum berhasil secara sempurna.

    Sudikah kiranya mas FX membantu saya untuk memberi pencerahan tentang walkthrough instalasi hingga konfigurasi SafeSquid tersebut.

    Untuk keterangan tambahan :
    1. Proxy Server saya menggunakan port 3128
    2. Proxy Server saya menggunakan Basic Authentication
    3. OS OpenSuSe 10.3

    Sebelumnya saya ucapkan terima kasih.

    FX. Eko Budi Kristanto:
    Saya mohon maaf sebelumnya Mas, sayang sekali saya belum bisa membantu dalam konfigurasi SafeSquid… :D Saya belum pernah mencobanya

  6. fauzi says:
    Firefox 2.0.0.11 Firefox 2.0.0.11 Windows XP Windows XP

    Mas mau nanya apakah kalau menggunakan squidguard itu termasuk pemblokiran berbasis content atau masih berbasis IP dan url?dan apa bedanya squidguard dan dansguardian?terima kasih mas eko

    FX. Eko Budi Kristanto:
    Pemblokiran squidguard masih berbasis IP dan URL Mas, dan sepertinya DansGuardian menawarkan fitur yang lebih lengkap ya.. Barusan saya baca di README DansGuardian, filteringnya tidak hanya sekedar berbasis IP/domain, tetapi bisa berbasis content. Terima kasih sekali atas pertanyaan dan sharingnya nya Mas, saya jadi pengin banget mencobanya.. :D

  7. fauzi says:
    Firefox 2.0.0.4 Firefox 2.0.0.4 GNU/Linux GNU/Linux

    Mas mau nanya klagi kira2 bisa g digabung antara squidguard dan dansguardian di squid?maksudnya 2nya jalan gitu?

    FX. Eko Budi Kristanto:
    Kemungkinan besar sih bisa Mas.. Sayang saya belum pernah mencobanya.. :D Tapi ini sangat menarik dan bisa memberikan solusi baru Mas, saya pasti akan mencobanya.. Terima kasih atas inspirasinya.

  8. Doni Permono says:
    Firefox 3.0.3 Firefox 3.0.3 Windows XP Windows XP

    isinya sama kaya yg barusan saya liad neh, boleh taw emailnya/ym na ga y, buat nanya2 about squid ini…heheh

  9. tonier says:
    Firefox 2.0.0.14 Firefox 2.0.0.14 Windows XP Windows XP

    Bisa gak ya digabungin, antara SquidGuard untuk situs jelek dan Adzap untuk memblokir iklan …

    di tempat saya sangat mantap untuk Adzapnya, belum mencoba menggabungkannya dengan DnsGuard … alasannya kemarin eror :D … semangat terus Mas ;)

  10. Sewa Komputer says:
    Firefox 3.0.11 Firefox 3.0.11 Windows XP Windows XP

    Salam kenal Pak Eko, saya mau langsung cobain. Makasih infonya.

  11. budi says:
    Firefox 3.0.8 Firefox 3.0.8 Ubuntu 9.04 Ubuntu 9.04

    Mas Eko, mo tanya nih, kalo pake dansguardian/squidguard apakah bisa blokir situs u/ ip tertentu dan jam tertentu, misal

    ip 10.10.1.10 tidak boleh facebook pd jam 08:00-17:00
    ip 10.10.1.20 boleh akses facebook non stop (biasa dimana-mana boss khan maunya bebas hehehehe)

    terima kasih

  12. lukman says:
    Firefox 3.5.5 Firefox 3.5.5 GNU/Linux GNU/Linux

    thanks infonya pak eko,
    mau tanya bgmn cara sederhana meredirect url supaya akses facebook.com dialihkan menjadi google.com
    saya bisa minta tutorial squidguard?tolong dikirim ke email service_komputer@ymail.com
    .-= lukman´s last blog ..Service Komputer Laptop Printer =-.

  13. adek rama says:
    Firefox 3.5b4 Firefox 3.5b4 Windows XP Windows XP

    Gimana ni caranya menginstal di ubuntu lewat terminal ?

  14. haydar says:
    Opera 10.10 Opera 10.10 Windows XP Windows XP

    gmn caranya redirect dari http://www.yahoo.com ke http://www.yahoo.com?ayamgoreng

    intinya setiap URL yang dikunjungi akan ditambahin ?ayamgoreng dibelakang URLnya secara otomatis.

    tolong email ke cutedevil@ymail.com

    udah puter2 ke seluruh penjuru dunia maya ga nemu2 juga :( >.< T_T

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">