Membatasi Download pada Squid
Thursday, June 23, 2011
Edit
Dalam pengelolaan bandwidth, terutama yang bandwidthnya terbatas, maka pembatasan download sangat diperlukan.
Dengan squid pembatasan dapat dilakukan dengan bebarapa cara. Dalam bahasan ini akan dibahas dua hal saja yaitu :
1. Membatasi besarnya file yang boleh di download
Misalnya tidak boleh download dengan fle ukuran 650MB (satu CD)
ini dapat dilakukan dengan menambahkan tag reply_body_max_size
Akan dibuat aturan sebagai berikut :
a. Untuk browsing biasa tidak ada pembatasan
b. Untuk download dengan ukuran dibawah 1MB tidak ada pembatasan kecepatan
c. Untuk download dengan ukuran diatas 1MB dibatasi dengan kecepatan 10 byte / detik
copas : http://kusprayitna.staff.uii.ac.id/2008/12/11/membatasi-download-pada-squid/
Dengan squid pembatasan dapat dilakukan dengan bebarapa cara. Dalam bahasan ini akan dibahas dua hal saja yaitu :
1. Membatasi besarnya file yang boleh di download
Misalnya tidak boleh download dengan fle ukuran 650MB (satu CD)
ini dapat dilakukan dengan menambahkan tag reply_body_max_size
# Filter Download2. Cara yang kedua dengan cara membatasi download dengan memperlambat atau shaping paket yang dilewatkan. Misalnya badwidth yang tersedia 256kbps, dimana saat download bisa rata-rata 30KBps.
acl download url_regex -i ftp .exe .mp3 .vqf .tar.gz .gz .tar .rpm .zip .rar .avi .mpeg .mpe .mpg .qt .ram .rm .iso .raw .wav .mov .msi .mp4
# TAG: reply_body_max_size bytes allow|deny acl acl…
# This option specifies the maximum size of a reply body in bytes.
# It can be used to prevent users from downloading very large files,
# such as MP3’s and movies. When the reply headers are received,
# the reply_body_max_size lines are processed, and the first line with
# a result of “allow” is used as the maximum body size for this reply.
# This size is checked twice. First when we get the reply headers,
# we check the content-length value. If the content length value exists
# and is larger than the allowed size, the request is denied and the
# user receives an error message that says “the request or reply
# is too large.” If there is no content-length, and the reply
# size exceeds this limit, the client’s connection is just closed
# and they will receive a partial reply.
#
# WARNING: downstream caches probably can not detect a partial reply
# if there is no content-length header, so they will cache
# partial responses and give them out as hits. You should NOT
# use this option if you have downstream caches.
#
# If you set this parameter to zero (the default), there will be
# no limit imposed.
#
#Default:
# reply_body_max_size 0 allow all
reply_body_max_size 6500000000 allow download
Akan dibuat aturan sebagai berikut :
a. Untuk browsing biasa tidak ada pembatasan
b. Untuk download dengan ukuran dibawah 1MB tidak ada pembatasan kecepatan
c. Untuk download dengan ukuran diatas 1MB dibatasi dengan kecepatan 10 byte / detik
# Filter Download
acl download url_regex -i ftp .exe .mp3 .vqf .tar.gz .gz .tar .rpm .zip .rar .avi .mpeg .mpe .mpg .qt .ram .rm .iso .raw .wav .mov .msi .mp4
# dibuat 2 aturan
delay_pools 2
# aturan 1, tidak ada pembatasan
delay_class 1 2
delay_parameters 1 -1/-1 -1/-1
# aturan 2, setelah download 2048000 bytes mk download menjadi 10000 bytes/s
delay_class 2 2
delay_parameters 2 -1/2048000 10000/2049000
delay_access 2 allow download
delay_access 2 deny all
delay_access 1 deny download
delay_access 1 allow all
copas : http://kusprayitna.staff.uii.ac.id/2008/12/11/membatasi-download-pada-squid/