Ini konfig squid high performance yang baru. Hati2 klo mo pake karena bakal mengisi storage cache anda secara progressive. Hati2 jika anda memiliki ukuran storage yang terbatas (baca – kecil).
# WELCOME TO SQUID 2.x HIGH PERFORMANCES# ——————
#==============================================
# TAG: http_port
# Daftar port koneksi squid. Yang penting isi http_port karena ini
# merupakan port servis squid yang utama. ‘icp_port’ hanya digunakan
# jika terdapat sibling proxy (proxy tetangga) yang mengijinkan
# pembagian/share cache.
#
#==============================================
http_port 8080 transparent
http_port 3128 transparent
#http_port 80
#icp_port 3130
#==============================================
# TAG: hierarchy_stoplist
# Daftar kata2 yg, jika ditemukan dalam sebuah URL, menyebabkan obyek
# akan ditangani langsung oleh squid. Opsi dapat ditulis beberapa kali
#
#Rekomendasi:
#hierarchy_stoplist cgi-bin ?
#acl QUERY urlpath_regex cgi-bin \?
#no_cache deny QUERY
#==============================================
hierarchy_stoplist cgi-bin ? .js .jsp .g .do .php .asp .cgi
acl QUERY urlpath_regex cgi-bin \? .js .jsp .g .do .php .asp .cgi
no_cache deny QUERY
#==============================================
# OPTIONS WHICH AFFECT THE CACHE SIZE
#==============================================
# Ukuran memory (RAM) yang digunakan untuk men-cache obyek. Jangan
# terlalu besar. Angka standar sekitar 70% RAM, tetapi karena setting
# squid umumnya adalah untuk men-cache obyek2 kecil (obyek<1mb)>
# saja angka maksimum 30% RAM agar proses lain masih kebagian RAM.
# Beberapa orang malah menyarankan agar ukuran cache memory adalah 4 MB
# meskipun ukuran RAM-nya besar (512 MB <= RAM)
cache_mem 8 MB
# Ukuran maksimum suatu obyek yang di-cache ke hd. Ukurannya terserah
# tergantung kebutuhan. Misalnya untuk keperluan update MS Windows,
# biasanya ukurannya menjadi sekitar 128-256 MB. Artinya obyek sampai
# ukuran yang tertera akan disimpan ke dalam cache. Tetapi men-cache
# obyek berukuran besar akan menyebabkan ukuran cache squid harus besar.
# Jadi tetapkan dengan bijak agar squid bekerja optimal.
maximum_object_size 500 MB
# Karena policy squid saya adalah untuk men-cache obyek berukuran kecil
# maka ukuran maksimum obyek dalam memory (RAM) kecil saja (32 KB). Obyek2
# yg berukuran lebih besar akan langsung disimpan ke dalam cache (hd).
#maximum_object_size_in_memory 32 KB
maximum_object_size_in_memory 256 KB
# Ini adalah trik yg menyebabkan squid selalu berusaha menyimpan obyek
# dalam memory dan baru akan men-swap data ke hd jika cache_mem sudah
# penuh.
cache_swap_low 98%
cache_swap_high 99%
# Bagian ini adalah metode swapping data dari memory ke cache hd. LFUDA
# brarti menyebabkan squid akan men-cache obyek2 berukuran besar,
# sebaliknya GDSF men-cache obyek2 kecil secara progresif. Saran saya
# cache hd menggunakan LFUDA dan cache memory menggunakan GDSF karena
# pembacaan/penulisan ke memory (RAM) jelas lebih cepat daripada hd.
cache_replacement_policy heap LFUDA
memory_replacement_policy heap GDSF
# Ini adalah pembatasan maksimum memory yg dipakai oleh squid. Saran saya
# sekitar 60-70% dari ukuran RAM.
#high_memory_warning 70 MB
# FIXME!
ipcache_size 16378
# Sama seperti cache_swap_low/high, hanya saja obyeknya adalah IP.
ipcache_low 98
ipcache_high 99
#==============================================
# LOGFILE PATHNAMES AND CACHE DIRECTORIES
#==============================================
# Bagian ini adalah konfigurasi direktori cache (hd). Urutannya adalah:
#
# cache_dir METODE PATH SIZE MIN_STORE_DIR MAX_STORE_DIR
#
# Untuk METODE silakan liat dokumentasi squid. PATH terserah dan
# biasanya orang meletakkannya ke dalam partisi berbeda dengan
# partisi / (ROOT) agar proses pembacaan/penulisan lebih cepat. SIZE
# ukuran maksimum hd yg dipakai untuk cache. Jika menggunakan partisi
# khusus untuk cache directory, jangan gunakan semua blok filesystem.
# Gunakan saja sekitar 70% ukuran partisi sehingga sistem log dan index
# dari partisi tsb tetap dapat bekerja dengan optimal. Dengan kata lain
# JANGAN SAMPAI PARTISI PENUH 100%!
cache_dir diskd /var/spool/squid 20000 16 256
# Ini adalah konfigurasi peletakan log squid. lokasinya terserah.
cache_access_log /var/log/squid/access.log
# Ini jarang dibaca terutama oleh admin males spt saya, sehingga tidak
# dibuat log-nya . Klo dibutuhkan silakan masukkan PATH seperti di atas
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
# Ini daftar mime squid. Selalu gunakan agar proses filtering obyek
# lebih cepat.
mime_table /etc/squid/mime.conf
# Lokasi PID squid.
pid_filename /var/run/squid.pid
# Beberapa log yg tidak signifikan karena opsi2-nya jarang digunakan.
# Mungkin digunakan tetapi bisa menyebabkan filesystem penuh oleh log .
log_fqdn off
log_icp_queries off
buffered_logs off
emulate_httpd_log off
#==============================================
# FTP section
#==============================================
# Selalu gunakan opsi ini untuk mengurangi beban trafik. FTP mode pasif
# menyebabkan client tidak berhubungan langsung dengan FTP Server tujuan
# dan menggunakan squid sebagai relay sehingga bandwidth utk koneksi FTP
# bisa dikontrol mungkin dengan kombinasi IP filtering (PF (BSD)/ IPTABLES).
ftp_passive on
ftp_sanitycheck on
#==============================================
# DNS resolution section
#==============================================
# Isikan IP (BUKAN NAMA) untuk mempercepat resolusi query dns dari client.
dns_nameservers 127.0.0.1 202.127.97.18 202.127.97.19
#==============================================
# Filesystem section
#==============================================
#diskd_program /usr/bin/diskd
#==============================================
# AUTH section
#==============================================
# Sistem autentikasi client-server yg di-relay oleh squid. Gunakan jika
# perlu. Tidak saya gunakan agar tidak membebani kerja squid dan bw.
#auth_param basic children 5
#auth_param basic realm Squid proxy-caching web server
#auth_param basic credentialsttl 2 hours
#auth_param basic casesensitive off
#==============================================
# Refresh Rate
#==============================================
# Ini adalah bagian yg sering diutak-atik karena menyangkut lamanya
# sebuah obyek dicatat dalam cache (hd). Cari nilainya secara
# trial n error karena tidak ada angka pasti. Urutannya adalah:
#
# refresh_pattern REGEX MIN_MINUTES VALIDITY(%) MAX_MINUTES
#
# REGEX : silakan liat dokumentasi squid untuk lebih lengkapnya.
# MIN_MINUTES: umur minimum dalam menit sebuah obyek berada dalam cache
# sebelum akan diganti dng obyek yg sama yg lebih baru.
# VALIDITY(%): tingkat validitas obyek dalam cache jika dibandingkan
# dengan obyek asli dari server. Semakin kecil angkanya
# maka squid akan semakin mempercepat proses refreshing obyek.
# Semakin besar angkanya maka semakin lama obyek berada dalam
# cache yg dalam beberapa kasus dapat menyebabkan sebuah
# halaman web tidak berubah jika dilihat dari client. Beban
# trafik harus diperhatikan dalam mempertimbangkan angkanya.
# MAX_MINUTES: umur maksimum obyek dalam cache sebelum obyek dihapus jika
# obyek tidak direfresh.
refresh_pattern -i \.gif 4320 50% 129600 override-lastmod reload-into-ims
refresh_pattern -i \.jpg 4320 50% 129600 override-lastmod reload-into-ims
refresh_pattern -i \.tif 4320 50% 129600 override-lastmod reload-into-ims
refresh_pattern -i \.png 4320 50% 129600 override-lastmod reload-into-ims
refresh_pattern -i \.jpeg 4320 50% 129600 override-lastmod reload-into-ims
refresh_pattern ^ftp: 4320 95% 129600 override-lastmod reload-into-ims
# Untuk beberapa kasus seperti FTP, refresh yg terlalu cepat tidak
# diperlukan karena biasanya daftar file pada sebuah FTP Server tidak
# berubah dalam waktu lama. Ini mempercepat proses listing direktori FTP.
refresh_pattern -i . 0 50% 129600 override-lastmod reload-into-ims
#
quick_abort_min 0 KB
quick_abort_max 0 KB
quick_abort_pct 100%
#==============================================
# ACL section
#==============================================
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localnet src 192.168.3.0/24 192.168.1.0/24
acl localhost src 127.0.0.1/255.255.255.255
acl our_networks src 192.168.3.0/24 192.168.1.0/24
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563 # https, snews
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl purge method PURGE
acl CONNECT method CONNECT
always_direct allow localnet localhost our_networks
always_direct deny all
http_access allow manager all
http_access deny !Safe_ports
http_access allow purge localhost
http_access deny purge
http_access allow localhost
http_access allow localnet
http_access allow our_networks
http_access deny all
http_reply_access allow all
icp_access allow all
reply_body_max_size 0 allow all
http_access allow localnet
http_access allow our_networks
http_access deny all
http_reply_access allow all
icp_access allow all
reply_body_max_size 0 allow all
cache_mgr walecha99@gmail.com
visible_hostname proxy.pls.diknas.go.id
header_access Accept-Encoding deny all
#==============================================
# Transparent proxy setting
#==============================================
#httpd_accel_host virtual
#httpd_accel_port 80
#httpd_accel_with_proxy on
#httpd_accel_uses_host_header on
#httpd_accel_no_pmtu_disc on
#httpd_accel_single_host off
half_closed_clients off
#forwarded_for on
#==============================================
# MISCELLANEOUS
#==============================================
logfile_rotate 3
negative_ttl 2 minutes
#digest_rebuild_period 30 minute
#digest_rewrite_period 30 minute
#digest_swapout_chunk_size 4096 bytes
client_persistent_connections on
server_persistent_connections on
pipeline_prefetch on
vary_ignore_expire on
reload_into_ims on
store_dir_select_algorithm round-robin
nonhierarchical_direct off
prefer_direct off
memory_pools off
shutdown_lifetime 10 seconds
cachemgr_passwd proxy all
ie_refresh on
cache_effective_user proxy
cache_effective_group proxy
Wew… masih ada lagi neh! Lanjuttttttttttttttt………………….
kurang lebih seperti ini kalo dibikin simple tanpa penjelasan:
#============================================================$
# WELCOME TO SQUID 2 HIGH PERFORMANCES
#============================================================$
http_port 8080
http_port 3128
#http_port 80
icp_port 3130
#============================================================$
# TAG: hierarchy_stoplist
# A list of words which, if found in a URL, cause the object to
# be handled directly by this cache. In other words, use this
# to not query neighbor caches for certain objects. You may
# list this option multiple times.
#
#We recommend you to use at least the following line.
#============================================================$
hierarchy_stoplist cgi-bin ? .js .jsp .g .do .php .asp .cgi localhost visicom indosat.net.id
acl QUERY urlpath_regex cgi-bin \? .js .jsp .g .do .php .asp .cgi localhost visicom indosat.net.id
no_cache deny QUERY
#============================================================$
#============================================================$
# OPTIONS WHICH AFFECT THE CACHE SIZE
#============================================================$
cache_mem 4 MB
maximum_object_size 10 MB
maximum_object_size_in_memory 32 KB
cache_swap_low 98%
cache_swap_high 99%
cache_replacement_policy heap LFUDA
memory_replacement_policy heap GDSF
high_memory_warning 70 MB
ipcache_size 4096
ipcache_low 98
ipcache_high 99
#============================================================$
# LOGFILE PATHNAMES AND CACHE DIRECTORIES
#============================================================$
cache_dir diskd /var/spool/squid 2000 8 256
cache_access_log /var/log/squid/access.log
cache_log /dev/null
cache_store_log /dev/null
mime_table /usr/share/squid/mime.conf
pid_filename /var/run/squid.pid
log_fqdn off
log_icp_queries off
buffered_logs off
emulate_httpd_log off
#============================================================$
# FTP section
#============================================================$
ftp_passive on
ftp_sanitycheck on
#============================================================$
# DNS resolution section
#============================================================$
dns_nameservers 127.0.0.1 202.155.0.20 202.155.0.10
#============================================================$
# Filesystem section
#============================================================$
diskd_program /usr/lib/squid/diskd
#============================================================$
# AUTH section
#============================================================$
#auth_param basic children 5
#auth_param basic realm Squid proxy-caching web server
#auth_param basic credentialsttl 2 hours
#auth_param basic casesensitive off
#============================================================$
# Refresh Rate
#============================================================$
refresh_pattern \.gif 4320 50% 43200
refresh_pattern \.jpg 4320 50% 43200
refresh_pattern \.tif 4320 50% 43200
refresh_pattern \.png 4320 50% 43200
refresh_pattern \.jpeg 4320 50% 43200
refresh_pattern ^http://www.friendster.com/.* 720 100% 4320
refresh_pattern ^http://mail.yahoo.com/.* 720 100% 4320
refresh_pattern ^http://*.yahoo.*/.* 720 100% 4320
refresh_pattern ^http://*.yimg.*/.* 720 100% 4320
refresh_pattern ^http://*.gmail.*/.* 720 100% 4320
refresh_pattern ^http://*.google.*/.* 720 100% 4320
refresh_pattern ^http://*korea.*/.* 720 100% 4320
refresh_pattern ^http://*.akamai.*/.* 720 100% 4320
refresh_pattern ^http://*.windowsmedia.*/.* 720 100% 4320
refresh_pattern ^http://*.googlesyndication.*/.* 720 100% 4320
refresh_pattern ^http://*.plasa.*/.* 720 100% 4320
refresh_pattern ^http://*.telkom.*/.* 720 100% 4320
refresh_pattern ^ftp: 10080 95% 40320 reload-into-ims override-lastmod
refresh_pattern . 0 20% 4320 reload-into-ims override-lastmod
quick_abort_min 0 KB
quick_abort_max 0 KB
quick_abort_pct 100%
#============================================================$
# ACL section
#============================================================$
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localnet src 192.168.2.0/28 192.168.3.0/28 219.83.82.208/28
acl localhost src 127.0.0.1/255.255.255.255
acl our_networks src 192.168.2.0/28 192.168.3.0/28 219.83.82.208/28
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563 # https, snews
#acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
#acl Safe_ports port 280 # http-mgmt
#acl Safe_ports port 488 # gss-http
#acl Safe_ports port 591 # filemaker
#acl Safe_ports port 777 # multiling http
acl Safe_ports port 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl purge method PURGE
acl CONNECT method CONNECT
always_direct allow localnet localhost our_networks
always_direct deny all
http_access allow manager all
http_access deny !Safe_ports
http_access allow purge localhost
http_access deny purge
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access allow localnet
http_access allow our_networks
http_access deny all
http_reply_access allow all
icp_access allow all
reply_body_max_size 0 allow all
cache_mgr iwellbc@gmail.com
visible_hostname visicom
header_access Accept-Encoding deny all
#============================================================$
# Transparent proxy setting
#============================================================$
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
httpd_accel_no_pmtu_disc on
httpd_accel_single_host off
half_closed_clients off
#forwarded_for on
#============================================================$
# MISCELLANEOUS
#============================================================$
logfile_rotate 3
negative_ttl 2 minutes
#digest_rebuild_period 30 minute
#digest_rewrite_period 30 minute
#digest_swapout_chunk_size 4096 bytes
client_persistent_connections on
server_persistent_connections on
pipeline_prefetch on
vary_ignore_expire on
reload_into_ims on
store_dir_select_algorithm round-robin
nonhierarchical_direct off
prefer_direct off
memory_pools off
shutdown_lifetime 10 seconds
cachemgr_passwd proxy all
ie_refresh on
cache_effective_user proxy
cache_effective_group proxy