Konfig SQUID Progressive v3
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 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