Linux

Linux

Setting PC Router dan Firewall pada LINUX

Setting PC Router dan Firewall pada LINUX

Artikel ini hanyalah sepenggal catatan kecil (referensi pribadi) yang di susun kembali berdasarkan sumber-sumber lain dari internet, hasil diskusi dengan paman Google dan bibi Yahoo :-) . Dengan harapan diposting disini untuk mengingat-ingat kembali dan bisa pula menjadi referensi bagi semuanya terutama buat eKa yang meminta postingan ini melalui Shoutbox beberapa hari yang lalu. Dan khususnya bagi siswa saya TKJ yang sedang belajar LINUX dan menghadapi Lomba Kegiatan Siswa (LKS).

Sebenarnya sudah banyak website/blog yang ngulik masalah ini secara tuntas, sebut saja Forum Linux, Info Linux, Gudang Linux, DiskusiWeb, Linux Online dll. Akan tetapi disini saya cuma membahas bagaimana menjadikan Linux yang kita miliki sebagai gateway yang akan menghubungkan jaringan lokal (LAN) ke dunia luar (Internet). Dimana, sistem Linux ini akan dijadikan sebagai PC Router dengan konfigurasi Ip_forwarding, dan NAT+MASQUERADE dengan settingan standard yang sederhana. Sementara untuk penggunaan Firewall, URL Filter, Squid serta Delay Pools (manajemen bandwidth) akan dibahas pada postingan berikutnya.


Installasi ini sudah berhasil dilakukan pada distro linux redhat 9.0 dan fedora core 6.0 (LINUX TEXT) dengan spesifikasi komputer Intel PIII 866MHz, RAM 256, HDD 20GB, dan 2 buah Ethernet Card (Intel PRO/100 S Desktop Adapter – Realtek RTL8139/810x Familiy Fast Ethernet NIC).


1. Sebelum Setting mintalah IP publik ke ISP lengkap dengan netmask, broadcast dan dns-nya. Kemudian tentukan juga IP Lokal yang akan digunakan pada komputer client. Misal : (eth0) IP : 192.168.1.2 NETMASK : 255.255.255.0 GATEWAY : 192.168.1.1 BROADCAST : 192.168.1.255 NETWORK : 192.168.1.0DNS1 : 202.134.0.155DNS2 : 202.134.2.5

DNS3 : 203.130.193.74

(eth1)IP : 192.168.10.254/24NETMASK : 255.255.255.0BROADCAST : 192.168.10.255

NETWORK : 192.168.10.0


Catatan, loginlah ke mesin linux anda dengan username sebagai ROOT. Untuk melakukan perubahan tekan tomboll (insert) dan untuk menyimpan perubahan tekan escape : wq (write quit).


2. Settinglah IP pada ethernet-0.# vi /etc/sysconfig/network-scripts/ifcfg-eth0ip static DEVICE=eth0 BOOTPROTO=static BROADCAST=192.168.1.255 IPADDR=192.168.1.2NETMASK=255.255.255.0NETWORK=192.168.1.0

ONBOOT=yes

dhcpDEVICE=eth0BOOTPROTO=dhcp

ONBOOT=yes


2. Settinglah IP MGW dan HostName, serta DNS Resolver # vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=router

GATEWAY=192.168.1.1


# vi /etc/resolv.confnameserver 202.134.0.155nameserver 202.134.2.5

nameserver 203.130.193.74


3. Settinglah IP pada ethernet-1# vi /etc/sysconfig/network-scripts/ifcfg-eth1DEVICE=eth1BOOTPROTO=staticBROADCAST=192.168.10.255IPADDR=192.168.10.254NETMASK=255.255.255.0NETWORK=192.168.10.0

ONBOOT=yes


Pastikan default gateway telah mengarah ke IP gateway ISP, # route –nDan untuk melihat IP masing-masing ethernet cobalah command berikut :

# ifconfig|more


5. Setting IP Forwarding, agar paket dari jaringan client dapat berjalan ke jaringan di luarnya melalui gateway.# vi /etc/sysctl.conf

rubah net.ipv4.ip_forward = 0 menjadi net.ipv4.ip_forward = 1


# chkconfig –level 2345 network on

# /etc/rc.d/init.d/network restart


Sekarang lakukan testing dengan ngeping ke:# ping 192.168.1.1# ping 202.134.0.155 atau 202.134.2.5# ping www.google.com

# ping 192.168.10.0/24


Jika hasilnya Reply berarti settingnya sudah berhasil dan tinggal selangkah lagi.


6. Agar client atau jaringan lokal (LAN) yang terhubung dengan sistem linux anda (ke eth1) dapat mengakses internet, maka settinglah MGW dengan menggunakan source NAT IPTables dan Forwarding.# /etc/init.d/iptables stop

# vi /etc/rc.d/rc.nat


–:– Tambahkan scripts berikut –:–# !/bin/sh # flushIptables –FIptables –F –t nat# Script iptables untuk Source NAT sesuai dengan ip di eth0 dan eth1 (IP Statik)/sbin/iptables -t nat -A POSTROUTING -o eth0 -s 192.168.10.0/24 -j SNAT –to-source 192.168.1.2# Script iptables jika ip external eth0 merupakan DHCP/sbin/iptables -t nat -A POSTROUTING -o eth0 -s 192.168.10.0/24 -j MASQUERADE# Script Forwarding/sbin/iptables -t nat -A PREROUTING -i eth1 -s 192.168.10.0/24 -p tcp –dport 80 -j REDIRECT –to-ports 3128/sbin/iptables -t nat -A PREROUTING -i eth1 -s 192.168.10.0/24 -p udp –dport 80 -j REDIRECT –to-ports 3128/sbin/iptables -t nat -A PREROUTING -i eth1 -s 192.168.10.0/24 -p tcp –dport 8080 -j REDIRECT –to-ports 3128

/sbin/iptables -t nat -A PREROUTING -i eth1 -s 192.168.10/24 -p udp –dport 8080 -j REDIRECT –to-ports 3128


# chmod +x /etc/rc.d/rc.nat

# iptables –L –t nat


7. Simpanlah semua hasil konfigurasi di /etc/rc.local, sehingga Anda tidak perlu harus melakukan command-command sebelumnya setiap kali sistem di on-kan atau di-restart. Lakukan langkah berikut # vi /etc/rc.local:– Tambahkan script berikut –:# Local system initialization script# Put any local setup commands in here:#/etc/rc.d/rc.nat#

echo “”


Sampai pada tahap ini, berarti Anda sudah selesai membangun sebuah PC router dengan penerapan ip forwarding dan NAT+Masquerade, untuk mengujinya lakukan test ping dari komputer client ke DNS atau ke www.google.com. Jika hasilnya reply, berarti internet sudah bisa di akses dari komputer client.

Semoga memberikan pencerahan..

Sumber : http://riska-robianto.blogspot.com/2007/11/setting-pc-router-dan-firewall-pada.html

Membuat Internet Gateway Di Fedora Core 5

 Membuat Internet Gateway Di Fedora Core 5

Sebelum memulainya kita harus tahu dulu info lengkap dari ISP seperti : IP Address, NetMask, DNS Server dll pokoknya harus lengkap. Dan jangan lupa berdoa, sediakan cemilan dan minuman ringan biar nggak stress.

Contoh :

Konfigurasi WAN :
IP Address = 192.168.1.100
NETMASK = 255.255.255.0
GATEWAY = 192.168.1.1
DNS = 192.168.1.1

Konfigurasi LAN :
IP Address = 192.168.0.1
NETMASK = 255.255.255.0

Tahap pertama | Topologi Jaringan

Internet — Internet Gateway — Client

Tahap kedua | Konfigurasi eth0 (To Internet / Modem ADSL)

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0

ONBOOT=yes
USERCTL=no
IPV6INIT=no
PEERDNS=yes
TYPE=Ethernet
DEVICE=eth0
HWADDR=00:18:f3:23:87:79
BOOTPROTO=none
NETMASK=255.255.255.0
IPADDR=192.168.1.100
GATEWAY=192.168.1.1

Tahap ketiga | Konfigurasi eth1 (To LAN)

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth1

ONBOOT=yes
USERCTL=no
IPV6INIT=no
PEERDNS=yes
TYPE=Ethernet
DEVICE=eth1
HWADDR=00:40:f4:4f:fa:27
BOOTPROTO=none
NETMASK=255.255.255.0
IPADDR=192.168.0.1

Tahap keempat | Konfigurasi Name Server (DNS)

[root@localhost ~]# vi /etc/resolv.conf

search localdomain
nameserver 192.168.1.1

Tahap kelima | Konfigurasi ipv4 forwarding

[root@localhost ~]# vi /etc/sysctl.conf

# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
# sysctl.conf(5) for more details.

# Controls IP packet forwarding
net.ipv4.ip_forward = 1

# Controls source route verification
net.ipv4.conf.default.rp_filter = 0

# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 0

# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0

# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1

# Controls the use of TCP syncookies
net.ipv4.tcp_syncookies = 1

Tahap keenam | Konfigurasi Internet Sharing (IPTables)

[root@localhost ~]# vi /etc/sysconfig/iptables

# Generated by iptables-save v1.3.5 on Mon Nov 19 19:23:54 2007
*nat
:P REROUTING ACCEPT [59:7516]
:P OSTROUTING ACCEPT [532:36819]
:OUTPUT ACCEPT [527:36516]
-A POSTROUTING -s 192.168.0.0/255.255.255.0 -o eth0 -j SNAT –to-source 192.168.1.100

atau

-A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE (Jika eth0 menggunakan DHCP)

# Completed on Mon Nov 19 19:23:54 2007
Tahap ketujuh | Aktifkan service

[root@localhost ~]# /etc/init.d/iptables restart
[root@localhost ~]# /etc/init.d/network restart
Selamat mencoba dan semoga berhasil :)

Arti : delay_parameters 1 -1/-1 -1/-1

ini saya cobak berdasarkan konfigurasi oranglaen yg sudah ada , tapi tetep belum bisa, maksud saya, kenapa network laennya juga kenak limit, bantuin dunk omm ….

#We don’t want to limit downloads on our local network

acl magic_words1 url_regex -i 192.168.

#We want to limit downloads of these type of files
#Put this all in one line

acl magic_words2 url_regex -i ftp .exe .mp3 .vqf .tar.gz .gz .rpm .zip .rar .avi .mpeg .mpe .mpg .qt .ram .rm .iso .raw .wav$

#We don’t block .html, .gif, .jpg and similar files, because they
#generally don’t consume much bandwith
#We have two different delay_pools

delay_pools 2

#First delay pool
#W don’t want to delay our local traffic
#There are three pool classes; here we will deal only with the second
delay_class 1 2

#-1/-1 mean that there are no limits

delay_parameters 1 -1/-1 -1/-1

#magic_words1: 192.168

delay_access 1 allow magic_words1

#Second delay pool
#we want to delay downloading files mentioned in magic_words2

delay_class 2 2

#The numbers here are values in bytes;
#we must remember that Squid doesn’t consider start/stop bits
#5000/150000 are values for the whole network
#5000/120000 are values for the single IP
#after downloaded files exceed about 150000 bytes,
#(or even twice or three times as much)
#they will continue to download at about 5000 bytes/s

delay_parameters 2 5000/32000 5000/32000
delay_access 2 allow magic_words2

SQUID – Delay POOLS

 

 

Latar Belakang

Bandwidth merupakan barang yang mahal. Untuk saat ini kisaran 64 kps dihargai sekitar 4 jt perbulan. Permasalahnnya bandwith 64 kbits itu bukan nilai yang besar. Rata-rata yang didapat pelanggan adalah 64 1:2. Artinya 1 jalur 64 kbits digunakan untuk 2 pelanggan sekaligus.
Sudah bandwidthnya dibatasi terkadang pula disisi user ada yang bertingkah seenaknya. Merasa ada koneksi internet gratis, beberapa user mulai menggunakannya untuk membuka situs-situs tertentu atau mengkoleksi file-file tertentu. Tentu saja alokasi bandwidth yang tersedia semakin menyusut. Yang merasakan adalah golongan user yang biasa-biasa saja (bukan mania internet), mereka hanya bisa mengelus dada. Untuk mengatasi hal diatas, agar setiap user mendapat bandwidth yang cukup, bisa digunakan aplikasi squid proxy server.

Pelaksanaan

Sebelum mulai mengkonfigurasi delay pools, harus dipersiapkan terlebih dahulu aplikasi squid yang sudah dikompilasi dengn support delay pools. Beberapa distro besar seperti RedHat/Mandrake biasanya sudah di atur support delay pools.
Bila tidak dapat dikompilasi sendiri sebagai berikut

# ./configure --enable-delay-pools
# make
# make install

konfigurasi

File konfigurasi squid adalah squid.conf
ada beberapa tag konfigurasi untuk delay pools di squid.conf.

  1. delay_pools <jumlah>
    menyatakan berapa banyak bagian/pool yang akan dibuat
    misal delay_pools 2
  2. delay_class <bagian tipe/class>
    menentukan klas/tipe pembagian bandwith dari setiap pool. 1 pool hanya boleh memiliki 1 clas, tidak lebih atau kurang.
    bagian merupakan nomer urut dari jumlah pool didelay pool, jadi ada 1 s/d n bagian dimana n merupakan angka jumlah pada delay_pools
    tipe merupakan tipe class delay yang dipakai.
    Secara umum tipe menyatakan bagaimana cara membagi bandwidth, ada 3 tipe:
tipe/class keterangan
1 semua bandwidth yang ada akan dibagi sama rata untuk semua user squidex ada bandwidth 128 dan semua bandwith dipakai untuk browsing
2 membatasi pemakaian bandwith dari total bandwidth yang ada, dan bandwith yang diperuntukan squid akan dibagi semua user dengan sama rata.ex ada bandwidth 128 dimana 28 kbit dipakai untuk email dan sisanya (128-28) 100 kbit dipakai untuk browsing
3 membatasi pemakaian bandwidth dari total bandwidth yang ada, setiap network class C akan mendapat bandwidth sama besar, setiap user pernetwork akan mendapat bandwidth yang sama besar dari total bandwidth per network ex: bandwidth tersedia 512 kb, untuk browsing disediakan bandwidth 384 kb, sisanya untuk aktifitas lain.
Di jaringan tersebut ada 3 departement dengan network yang berbeda misal lab (192.168.1.0/24), manajer(192.168.2.0/24), sales(192.168.3.0/24).
nah misah oleh admin di set bahwa pernetwork mendapat jatah 128 kb/s.
maka user� di sales akan mendapat pembagian bandwidth sama besar dari total 128 kb/s.
maka user� di lab akan mendapat pembagian bandwidth sama besar dari total 128 kb/s.
maka user� di manajer akan mendapat pembagian bandwidth sama besar dari total 128 kb/s.

misal:

delay_class 1 2    # pool 1 memakai clas tipe 2
delay_class 2 3    # pool 2 memakai clas tipe 3
 
  • delay_access <bagian acl>
    Memberi batasan siapa saja yang boleh mempergunakan delay pools ini.
    Penting untuk diingat sebaiknya setelah menetukan batasan jangan lupa di akhiri dengan deny all.
    misal:

    delay_access 1 allow manajer
    delay_access 1 deny all
    delay_access 2 allow sales
    delay_access 2 deny all
  • delay_parameters
    Ini adalah bagian terpenting dari delay pools memberikan aturan main setiap delay pools yang dibentuk.
    delay parameter mempunyai format yang disesuaikan dengan tipe/class yang dipakai.
    Tapi disetiap tipe yang dipakai ada 1 format baku yaitu restore/max.restore menunjukkan maksimum kecepatan data yang dapat dilewatkan bila harga max sudah terlampaui, dalam satuan bytes/secondmax menunjukkan besar-nya file atau bucket yang dapat dilewatkan tanpa melalui proses delay. dalam satuan bytes.Yang perlu diperhatikan dari satuan diatas adalah harga restore dimana kita sering menerima/menyewa/membeli bandwidth dari provider dalam satuan bits/second bukan bytes/second. Sedangkan satuan kecepatan yang ditunjukkan oleh Microsoft pada saat mendonlot file adalah bytes/sec.
    Sedangkan satuan dari harga max sudah sesuai dengan kebiasaan sehari-hari, dimana kita memberi besaran bytes pada file-file.
    1 byte = 8 bit.

    SpesialCase: -1/-1 berarti unlimited atau tidak dibatasi pada nilai restore/max

    ex: 1000/64000 harga restore sama dengan 8000 bits/sec atau 8 kbits/sec.
    Yang artinya user akan mendapat donlot brustable selama file yang akan dibuka lebih kecil dari 64 kbytes, jadi kecepatan bisa diatas 8 kbit/sec.
    Bila ternyata file yang dibuka melebihi 64 bytes, maka proses limitasi akan segera dimulai dengan membatasi kecepatan maksimal 8 kbits/s.

    class 1
    delay_parameters <#pool individual>
    ex: delay_parameters 1 1000/64000
    Berarti semua network akan mendapat bandwidth yang sama di pool no 1.
    Sebesar 1 kbytes/sec (8 kbits/sec), dengan burstable file 64 kb.
    class 2
    delay_parameters <#pool agregate individual>
    ex: delay_parameters 1 32000/32000 1000/64000
    Berarti squid akan memakai bandwidth maksimum (32000*8) 256kbits dari semua bandwidth.
    Bila terdapat lebih dari 1 network class C, maka total yang dihabiskan tetap 256 kbit/sec
    dan tiap user akan mendapat bandwidth maksimum 1 kbytes/sec (8 kbits/sec), dengan burstable file 64 kb.
    class 3
    delay_parameters <#pool agregate network individual>
    ex: delay_parameters 1 32000/32000 8000/8000 1000/64000
    Berarti squid akan memakai bandwidth maksimum (32000*8) 256kbits dari semua bandwidth.
    Bila terdapat lebih dari 1 network class C, maka setiap network akan dipaksa maksimum sebesar (8000*8) 64 kbits/sec
    dan tiap user pada satu network akan mendapat bandwidth maksimum 1 kbytes/sec (8 kbits/sec), dengan burstable file 64 kb.
  • Contoh 1

    dalam 1 network dengan penggunaan bandwidth total tidak dibatasi terdapat beberapa komputer dengan klasifikasi sebagai berikut

    • admin, server dengan bandwidth unlimited
    • staff dengan bandwidth 1,5 kbytes/sec, bila file yang diakses melebihi 64Kbte
    • umum dengan bandwidth 1 kbytes/sec, bila file yang diakses melebihi 32 Kbyte
    acl all src 0.0.0.0/0.0.0.0
    acl admin src 192.168.1.250/255.255.255.255
    acl server src 192.168.1.251/255.255.255.255
    acl umum src 192.168.1.0/255.255.255.0
    acl staff src 192.168.1.1 192.168.1.111 192.168.1.2 192.168.1.4 192.168.1.71
    
    delay_pools 3
    
    delay_class 1 1
    delay_parameters 1 -1/-1
    delay_access 1 allow admin
    delay_access 1 allow server
    delay_access 1 deny all
    
    delay_class  2 1
    delay_parameters 2 1500/64000
    delay_access 2 allow staf
    delay_access 2 deny all
    
    delay_class  3 1
    delay_parameters 3 1000/32000
    delay_access 3 allow umum
    delay_access 3 deny all

    Cara mencobanya paling mudah adalah dengan menggunakan donlot manajer semacam DAP, GetRight maka akan terlihat bandwidth sudah dibatasi.

    Contoh 2

    Delay pools juga dapat digunakan untuk membatasi donlot file untuk extensi tertentu.
    Gunakan ACL url_regex untuk mengatasi hal ini.
    Contoh dibawah digunakan untuk membatasi donlot file multimedia hingga 1 kByte/sec.

    acl multimedia url_regex -i \.mp3$ \.rm$ \.mpg$ \.mpeg$ \.avi$ \.dat$
    delay_pools 1
    delay_class 1 1
    delay_parameters 1 1000/16000
    delay_access 1 allow multimedia
    delay_access 1 deny ALL

    Contoh 3 dari forum.linux.or.id

    bagaimana caranya membuat delay pools untuk membatasi download di siang hari untuk 15 klient sedangkan malam harinya lost asumsi jamnya ( 10:00 – 21:00)

    acl LTIME time SMTWHFA 10:00-21:00
    
    acl download url_regex -i ftp \.exe$ \.mp3$ \.mp4$ \.tar.gz$ \.gz$ \.tar.bz2$ \.rpm$ \.zip$ \.rar$
    acl download url_regex -i \.avi$ \.mpg$ \.mpeg$ \.rm$ \.iso$ \.wav$ \.mov$ \.dat$ \.mpe$ \.mid$
    acl download url_regex -i \.midi$ \.rmi$ \.wma$ \.wmv$ \.ogg$ \.ogm$ \.m1v$ \.mp2$ \.mpa$ \.wax$
    acl download url_regex -i \.m3u$ \.asx$ \.wpl$ \.wmx$ \.dvr-ms$ \.snd$ \.au$ \.aif$ \.asf$ \.m2v$
    acl download url_regex -i \.m2p$ \.ts$ \.tp$ \.trp$ \.div$ \.divx$ \.mod$ \.vob$ \.aob$ \.dts$
    acl download url_regex -i \.ac3$ \.cda$ \.vro$ \.deb$
    
    delay_pools 1
    
    delay_class 1 1
    delay_parameters 1 3000/3000
    delay_access 1 allow download TIME
    delay_access 1 deny all

    Contoh 4

    Bagaimana caranya membuat delay pools untuk membatasi download di siang hari dengan speed … dan malam hari dengan speed …, abis si bozz malem-nya mau pakai buat dolot.
    Jadi pengennya pas malam bw buat user makin kecil, bukan malah di loss

    acl JAM_KANTOR time SMTWHFA 07:00-18:00 
    
    delay_pools 2 delay_class 1 2
    delay_parameters 1 24000/32000 -1/-1
    delay_access 1 allow riset JAM_KANTOR
    delay_access 1 deny all 
    
    delay_class 1 2
    delay_parameters 2 8000/8000 -1/-1
    delay_access 2 allow riset !JAM_KANTOR
    delay_access 2 deny all

    Contoh 5

    wangsit masterpop3 yang semedi dengan pecelpenyu.
    Saya ada bandwidth besar, 1mbps.
    Ingin membatasi yang donlot file besar di atas 5mbyte, di beri speed 32kbps.
    Misal bila ada 3 user yang donlot, tiap-tiap user akan mendapat bw maximal 32kbps.

    acl user src 192.168.1.0/24
    
    delay_pools 1
    delay_class 1 2
    delay_parameters 1 40000/10000000 4000/5000000
    delay_access 1 allow user download
    delay_access 1 deny ALL

    Contoh 6 limit youtube

    untuk memaksa caching terhadap youtube ( sesuai wiki.squid-cache.org )

    acl youtube dstdomain -i .youtube.com
    acl striming url_regex -i get_video\?video_id videodownload\?
    cache allow youtube
    cache allow striming

    dan harap di ingat untuk posisi tsb di atas sebaiknya diletakkan sebelum hierarchy_stoplist
    kemudian bisa di gabung ke delay_pool juga

    delay_class 2 3
    delay_access 2 allow warnet striming
    delay_access 2 deny all
    delay_parameters 2 -1/-1 -1/-1 3000/200000

    hasilnya :

    Connection: 0x7f1da510
       FD 149, read 555, wrote 6508975
       FD desc: http://ash-v97.ash.youtube.com/get_video?video_id=YXF72VCyt5M
       in: buf 0x7fe65000, offset 0, size 4096
       peer: 192.168.0.111:3317
       me: 127.0.0.1:3127
       nrequests: 1
       defer: n 0, until 0
    uri http://ash-v97.ash.youtube.com/get_video?video_id=YXF72VCyt5M
    log_type TCP_MISS
    out.offset 6508872, out.size 6508975
    req_sz 555
    entry 0x7d24e240/599CDB16D8D8DCB1395E960CD807BD8B
    old_entry 0x0/N/A
    start 1193286572.113589 (2131.525289 seconds ago)
    username -
    delay_pool 2 <= terkena delay

    untuk delay_pool saya tidak menggunakan domain youtube.com, karena ternyata untuk url streaming nya sebagian hanya menggunakan ip address biasa, sehingga menggunakan regex spt di atas saya rasa lebih efektif.
    silakan di eksperimen sendiri untuk regex nya, bisa dg menganalisa access.log atau kalau yg gampang menggunakan sqstat spt yg pernah di post di thread sebelah.

    Sumber

    http://estawar.wordpress.com/2007/11/03/squid-delay-pools/