Monday, December 19, 2005

Instalasi SARG (Serious Post)

Beberapa hari yang lalu sempat buka-buka log squid, sekedar pengen tahu apakah user dalam jaringan suka buka situs yang "aneh-aneh" selain itu koq jadi banyak banget user yang komputernya kena spyware. Idenya kalau ada situs yang "aneh" atau situs-situs yang kebanyakan isinya spyware mending di blok aja. Atau user yang kebanyakan download file yang gede-gede mau digencet sekalian :).
Tapi setelah dilihat log squid secara manual kok bukannya tambah ngerti tapi tambah bingung bacanya, lagian banyak banget isinya. Akhirnya nyerah deh dan coba cari pertolongan ke milis. Menurut anjuran beberapa teman akhirnya diputuskan untuk menggunakan SARG (Squid Access Router Graphic). SARG ini adalah tool sederhana yang digunakan untuk membuat report dari log squid dalam bentuk tampilan html. Berikut sedikit informasi apa-apa yang telah saya lakukan:

I. Persiapan

II. Instalasi
Agar instalasi SARG sukses, maka perlu dilakukan instalasi paket-paket pendukungnya terlebih dahulu.

  • Instalasi zlib (asumsi instalasi dilakukan menggunakan paket source, x disini adalah nomor versi dari file source)
    1. Ekstrak paket source zlib
    $ tar -xzvf zlib-x.x.x.tar.gz
    2. Masuk ke folder hasil ekstraksi
    $ cd zlib-x.x.x.tar.gz
    3. Lakukan konfigurasi paket source
    $ ./configure
    $ make
    4. Proses instalasi, sebelumnya loginlah terlebih dulu sebagai root
    $ su
    # make install
    # exit
  • Instalasi libpng (asumsi instalasi dilakukan menggunakan paket source, x disini adalah nomor versi dari file source)
    1. Ekstrak paket source libpng
    $ tar -xzvf libpng-x.x.x.tar.gz
    2. Masuk ke folder hasil ekstraksi
    $ cd libpng-x.x.x.tar.gz
    3. Lakukan konfigurasi paket source
    $ ./configure
    $ make
    4. Proses instalasi, sebelumnya loginlah terlebih dulu sebagai root
    $ su
    # make install
    # exit
  • Instalasi freetype2 (asumsi instalasi dilakukan menggunakan paket source, x disini adalah nomor versi dari file source)
    1. Ekstrak paket source freetype2
    $ tar -xzvf freetype2-x.x.x.tar.gz
    2. Masuk ke folder hasil ekstraksi
    $ cd freetype2-x.x.x.tar.gz
    3. Lakukan konfigurasi paket source
    $ ./configure
    $ make
    4. Proses instalasi, sebelumnya loginlah terlebih dulu sebagai root
    $ su
    # make install
    # exit
  • Instalasi GD (asumsi instalasi dilakukan menggunakan paket source, x disini adalah nomor versi dari file source)
    1. Ekstrak paket source GD
    $ tar -xzvf gd-x.x.x.tar.gz
    2. Masuk ke folder hasil ekstraksi
    $ cd gd-x.x.x.tar.gz
    3. Lakukan konfigurasi paket source
    $ ./configure
    $ make
    4. Proses instalasi, sebelumnya loginlah terlebih dulu sebagai root
    $ su
    # make install
    # exit
    Lokasi file hasil instalasi secara default diletakkan di direktori "/usr/local/lib"
  • Sebelum instalasi SARG dilakukan, agar library GD dikenali oleh sistem maka perlu dibuatkan path terlebih dahulu ke library GD tersebut, ketik perintah berikut di console sebagai root
    $ su
    # echo "/usr/local/lib" >> /etc/ld.so.conf
    # ldconfig
  • Instalasi SARG (asumsi instalasi dilakukan menggunakan paket source)
    1. Ekstrak paket source SARG
    $ tar -xzvf sarg-x.x.x.tar.gz
    2. Masuk ke folder hasil ekstraksi
    $ cd sarg-x.x.x.tar.gz
    3. Lakukan konfigurasi paket source
    $ ./configure
    $ make
    4. Proses instalasi, sebelumnya loginlah terlebih dulu sebagai root
    $ su
    # make install
    # exit
    Secara default instalasi akan menghasilkan folder:
    - /usr/local/sarg, disini terletak file-file konfigurasi SARG
    - /usr/bin, disini diletakkan file "executable" yang digunakan untuk menggenerate report

Tarik napas dulu :) ----------------------------------------------------------

III. Setting SARG
Setelah proses instalasi selesai sebelum menggunakannya perlu dilakukan perubahan dari file konfigurasi sarg (sarg.conf) yang terletak di folder /usr/local/sarg sesuai kebutuhan. Selain setting melalui file konfigurasi, setting laporan yang ingin ditampilkan dapat juga dilakukan pada saat runtime. Berikut contoh pemakaian SARG:

  • Kita akan buat laporan log squid dari tanggal 10-Desember-2005 sampai 30-Desember-2005. Lokasi penyimpanan hasil report diletakkan di direktori "/var/www/html/sarg/contoh". Sedangkan lokasi file log squid yang akan dibaca ada di "/var/log/squid/access.log". Perintahnya adalah:

    $ /usr/bin/sarg -l /var/log/squid/access.log -o /var/www/html/sarg/contoh -z -d 10/12/2005-30/12/2005

    Otomatis akan hasil laporan akan diletakkan di folder "/var/www/html/sarg/contoh". Untuk mengaksesnya cukup gunakan web browser dan buka file index.html yang dihasilkan dalam folder tersebut.
    Untuk memudahkan pemakaian, contoh skrip tersebut dapat disimpan dalam bentuk file yang executable kemudian jalankan dengan bantuan cron. Berikut contoh-contoh yang diambil dari http://sarg.sourceforge.net/enhancements.php :

    Laporan harian :

    #!/bin/bash
    #Get current dateTODAY=$(date +%d/%m/%Y)
    #Get one week ago todayYESTERDAY=$(date --date "1 day ago" +%d/%m/%Y)
    /usr/bin/sarg -l /var/log/squid/access.log -o /var/www/html/sarg/daily -z -d $YESTERDAY-$TODAY
    exit 0


    Laporan mingguan :

    #!/bin/bash
    #Get current dateTODAY=$(date +%d/%m/%Y)
    #Get one week ago todayYESTERDAY=$(date --date "1 week ago" +%d/%m/%Y)
    /usr/bin/sarg -l /var/log/squid/access.log -o /var/www/html/sarg/weekly -z -d $YESTERDAY-$TODAY
    exit 0


    Laporan bulanan :

    #!/bin/bash
    #Get current dateTODAY=$(date +%d/%m/%Y)
    #Get one week ago todayYESTERDAY=$(date --date "1 month ago" +%d/%m/%Y)
    /usr/bin/sarg -l /var/log/squid/access.log -o /var/www/html/sarg/monthly -z -d $YESTERDAY-$TODAY
    /usr/local/squid/bin/squid -k rotate
    exit 0


    Referensi :
    1. http://sarg.sourceforge.net/sarg.php
    2. http://www.boutell.com
    3. http://www.zlib.net/
    4. http://www.libpng.org/pub/png/
    5. http://freetype.sourceforge.net

Wish Book 1

01:00 tengah malam.
Jadi kepikiran ... dah lama juga nggak ngisi blog. Makanya sekarang aja sempetin. Baru dapet banyak e-book nih dari milis, jadi sayang mau tidur di awal waktu. Nanggung, soalnya suka lupa lagi apa yang dibaca semalam kalau nggak sampai ngerti betul. Tapi baca e-book langsung di komputer juga harus hati-hati, soalnya kalau nggak jaga-jaga mata bisa-bisa rabun duluan (uuh jangan deh ...). Btw jadi pingin beli yang versi hardcopynya, untuk sementara aku tulis aja dulu dalam daftar wish list:
2. Head First Design Pattern

Transparent Proxy (Serious Post)

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

Wednesday, August 03, 2005

BUNDA

rinduku kembali pada rahim ibunda
yang telah menjelmakanku ke alam maya
tempat segala bayang dan jelma tiada


hendak kucoba menafsir segala
pengorbanannya, do'a-do'anya,
air matanya, bahkan tawanya
yang mengantarku menjejakkan langkah

setiap sauh,
kurasa hangat puji-puji keihklasannya
setiap labuh,
kurasa hangat belai jari-jemarinya

oh bunda ...
adakah cara
anak kecilmu ini menyeka air mata
sekedar tuk membuatu tertawa
ataukah airmata, bagimu adalah bahagia


aku dan kasih bunda

Tuesday, August 02, 2005

AKU, HUJAN, DAN LAMUNAN


hujan deras sore itu
meletakkanku dalam sudut pengembaraan
berhenti sejenak untuk menoleh
sekedar merunut kembali perjalanan selama ini

disela-sela suara air yang jatuh di tempayan kecil
lamunku melayang ke alam dimensi maya

kulihat betapa banyak jejak yang kutinggalkan
setiap tapaknya meninggalkan kesan yang dalam
membentukku hingga sebuah peradaban

perlahan daun pohon mahoni jatuh di ujung jalan kecil itu
membawa aroma keheningan dalam ratusan tahun kesendiriannya

sepotong kesadaranku terbang melintasi bulir-bulir air ke angkasa
hanya untuk sekedar bertanya
apakah engkau -langit yang dulu-, yang selama ini memayungi perjalananku
apakah engkau -hujan yang dulu-, yang selama ini membasahi haus rinduku


widodo
3 Agustus '05 - "siliwangi-bandung"

Monday, May 09, 2005

LEMBARAN KISAH (3)

adalah engkau matahari kecilku

...
penawar kelu
kala dingin setiap langkahku

Friday, April 29, 2005

NIKMAT RINDU ITU

kelabu
hatiku rasa kelabu
saat kurasakan hampa dalam tiap-tiap sujudku

tolong
wahai yang Maha
janganlah kau cabut nikmat rindu padaMu


ramadhan dipenghujung malam

LALAI

semai kerinduanku
yang mengantarku kembali menekunimu
menitik setiap bait suratmu
memaknai setiap tangkai ayat-ayatmu

meleleh hangat diantara sela-sela kelopak mataku
kala kuingat betapa seringkali aku lalai padamu


ramadhan 1426 H

Thursday, April 28, 2005

LEMBARAN KISAH (2)




sisa hujan sore ini,
aroma daun pinus,
dan teduh wajahmu yang membawa suasana malam hangat
adalah selimut
yang menemani perjalananku


widodo
26 april '05
tengah malam

Wednesday, April 27, 2005

WAJAH SANG MATAHARI KECIL

sadarku bahwa tiada pernah ku mampu
mengalihkan kesadaranku
dari wujudmu yang malu-malu muncul di benakku


penghujung musim hujan

LEMBARAN KISAH (1)

inginku menjadi kisah dalam perjalananmu
meskipun hadirku adalah titik
dalam lembaran kehidupanmu

inginku menjelma bayang
yang selalu menemanimu
meski hadirku hanya sampai malam datang

karena aku merasa
kita satu jiwa
yang diikat dengan kasihNya


bandung, akhir musim penghujan 2005