13 March 2006

Mendownload Linux Debian dengan Jigdo

Beberapa bulan yang lalu, saya beralih menggunakan debian, dari yang sebelumnya linux RedHat. Dimulailah tugas berat mendownload file-file iso. Tiga file iso sudah terdownload. Ketika dicek dengan md5sum, tak satupun file cocok. Dengan kata lain, file iso tersebut tidak valid. Alangkah kecewanya.

Kita terbiasa mendownload menggunakan http atau ftp. Nah, disinilah kelemahannya. Http dan ftp kurang cocok untuk mendownload file besar yang terdiri dari file-file kecil. Permasalahannya, http/ftp tidak memeriksa checksum (validitas data) setiap kali mulai mendownload maupun ketika me-resume download. Koneksi down, putus, semakin memperbesar kemungkinan file tersebut tidak valid.

Debian menawarkan alternatif untuk mendapatkan file iso, yaitu jigdo (Jigsaw Download). Jigdo selalu memeriksa checksum file yang didownload. Bagi server http/ftp, jigdo lebih ringan dibandingkan dengan metode biasa.


1. Cara Kerja Jigdo

Ketika jigdo dijalankan, di dalam direktori, terbentuk 6 file dan 1 subdirektori.
  • sarge-i386-1.iso.list
  • sarge-i386-1.iso.tmp
  • sarge-i386-1.jigdo
  • sarge-i386-1.jigdo.unpacked
  • sarge-i386-1.template
  • jigdo-file-cache.db
  • sarge-i386-1.iso.tmpdir/
Wget adalah jantung dari jigdo. Jigdo menggunakan wget untuk mendownload file. Download dilakukan per 10 paket, hingga semua paket selesai didownload.



Jigdo mengambil informasi 10 file pertama dari sarge*.jigdo (nama-nama file) dan sarge*.template (daftar md5sum). Wget mendownload file-file tersebut sambil dicocokkan validitasnya. File yang terdownload berada di direktori sarge*.iso.tmpdir/. Setelah selesai, 10 file tersebut ditulis dalam image sementara sarge*.iso.tmp. Begitu seterusnya hingga semua file terdownload. File image sarge*.iso.tmp yang lengkap, secara otomatis berubah menjadi sarge*.iso.


2. Mendownload File-file ISO dengan Jigdo

Install jigdo.
# apt-get install jigdo-lite

Ambil file sarge*.jigdo dan sarge*.template dari http/ftp server. Jalankan jigdo,

$ jigdo-lite sarge*.jigdo

Saat jigdo menanyakan darimana file akan didownload, arahkan ke server http/ftp terdekat. Jigdo sudah mulai bekerja, tunggulah hingga file iso terbentuk


3. Catatan

Jigdo juga tersedia dalam bentuk aplikasi GUI, dan installer dalam berbagai platform, termasuk windows.

Saat menggunakannya dalam lingkungan windows, usahakan sedekat mungkin dengan direktori teratas (C:\ atau D:\). File-file debian , kadang memiliki nama yang panjang, sedangkan windows membatasinya hanya untuk 255 karakter (full path). Misal, C:\debian-cd\xchat-common_2.6.1-1_all.deb, dihitung mulai dari huruf 'd' untuk debian.

Sayangnya, jigdo tidak secara luas digunakan di semua distribusi linux. Hanya debian saja yang memakainya. Varian debian (ubuntu), juga tersedia dalam bentuk jigdo, namun tidak untuk varian debian yang lain.

04 March 2006

Membuat Transparent Proxy Dengan Squid

Dalam sebuah jaringan, keberadaan gateway saja dirasa kurang memadai. Server proxy akan banyak membantu mengontrol client saat melakukan koneksi ke internet. Pembatasan bandwith, akses terhadap situs tertentu, maupun web caching.

Saat client melakukan browsing ke suatu situs, squid akan menyimpannya dalam cache. Apabila client me-request situs yang sama untuk kesekian kalinya, data yang diambil cukup dari cache squid. Cara tersebut, otomatis menghemat bandwith dan mempercepat browsing. Inilah cara kerja web caching, fungsi yang paling dominan dipakai dari squid.


  1. Install Squid



Debian sarge menggunakan squid2.4 STABLE 9.
# apt-get update
# apt-get install squid

Ada 3 file utama yang terdapat dalam squid.
  • /etc/squid/squid.conf (file konfigurasi squid)
  • /var/log/squid/access.log (file log squid)
  • /var/spool/squid/ (direktori cache squid)

Setelah squid terinstall, edit konfirugrasi squid (squid.conf), yang ada pada /etc/squid/squid.conf
# nano /etc/squid/squid.conf

maximum_object_size 8192 KB
cache_mem 16 MB
cache_dir ufs /var/spool/squid 2048 22 256
cache_store_log none

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl lan_network src 192.168.0.0/255.255.255.0
acl SSL_ports port 443 563
acl Safe_ports port 80 21 443 563 70 210 1025-65535
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777

acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow lan_network
http_access deny all

icp_access allow all
miss_access allow all
cache_mgr email_anda@hostname
visible_hostname hostname
unique_hostname hostname

httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
http_port 3128

Jangan lupa, mengaktifkan ip forwarding.
# nano /etc/sysctl.conf

net.ipv4.ip-forward = 1

Pada konfigurasi diatas, squid belum bekerja secara transparent. Anda harus melakukan konfigurasi secara manual pada semua browser client (internet explorer, firefox) agar koneksi dilakukan melalui proxy server

ip proxy server = 192.168.0.100
port proxy = 3128


2. Transparent Proxy

Agar proxy bekerja secara transparent, anda perlu mensetting iptables.

# nano /etc/init.d/iptables.sh

iptables -t nat -A PREROUTING
-i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128


Tambahkan file script tersebut pada rc.local, sehingga saat komputer hidup script iptables akan dieksekusi (start up).
# nano /etc/rc.local

/etc/init.d/iptables.sh

Iptables akan memaksa setiap request client untuk melewati "hanya" pada komputer proxy server port 3128. Dengan memiliki transparent proxy, anda tidak perlu mensetting manual browser client.


3. Blocking Situs

Buat file yang berisi daftar situs-situs yang diblok
#nano /etc/squid/site_terlarang

www.playboy.com

Tambahkan entri dibawah ini pada file konfigurasi squid (squid.conf)

acl site_terlarang dst domain "/etc/squid/site_terlarang"
http_access deny site_terlarang

PC Idaman

Hmm… saya punya rencana untuk menambah/mengganti beberapa komponen komputer. Untuk mudahnya, saya membaginya dalam 2 periode :

I. Tahun 2006 – 2007



1. Monitor Compaq V500

· 15” flat

· support 1600 x 1280 60Hz

2. NIC 3 com (3c905b-tx-m/3c905c-txm)

· support PXE ver. 2.0

· builtin bootrom, memungkinkan komputer untuk booting via network

3. Mouse optic (Creative/Logitech)

· sangat awet, karena tidak memiliki bagian yang bergerak seperti mouse mekanik. Bola digantikan oleh sinar dari LED

· 800 dpi, lebih presisi


II. Tahun 2007 keatas



1. Dell Dimension 8300 ~ Rp. 3 jt

· P4 2,0 Ghz Socket 478, L2 512 Kb

· chipset Intel 875

· FSB 400/533/800

· support 3.0 Ghz (Prescott ready)

· memory 256 DDR PC 2700 support dual DDR

· HD 40 GB 7200 RPM

· CDRW 52x32x32

· VGA SIS Xabre 200 32 MB

· Sound + Lan Onboard

· 1 AGP 8x, 4 PCI, 4 DDR, 6 USB 2.0

2. FPD (Hitachi/Fujitsu Siemens) ~ Rp. 2.1 jt

· 15”

· 1024 x 768 60 Hz

· ringkas

· 30-40 watt, hemat energi

· radiasi kecil, aman untuk mata

· single resolution

· fragile

· mahal, walaupun biaya untuk memproduksi FPD lebih murah daripada monitor CRT

3. VGA Ati Radeon 9200SE ~ Rp. 400rb

· 64 MB, lebih dari cukup untuk desktop linux, windows XP, game 3D sederhana

· support DVI, cocok sebagai konektor FPD

· heatsink tanpa kipas, tidak berisik

4. DVD – RW Plextor ~ Rp. 500rb

· single layer 4.7 GB, double layer 8.5 GB

· belum adanya standarisasi DVD (terbagi antara DVD-RW dan DVD+RW)

5. SoundCard Turtle Beach Riviera ~ Rp. 300rb

· 5 : 1 channel

· stabil, dibandingkan SB Live dan SB Audigy

6. Speaker Creative SBS 370 ~ Rp. 250rb

· 2 : 1

· wood coated subwoofer, suara bass yang lembut