Di edit oleh saya memakai #Gembels box dan direvive kembali hari ini. Aslinya poenyanya Ronald ( QarBa ) yg diculik dari koleksi na om Ibank klo ndak salah. Namun webna udah "mokad" jadi saya sempurnakan niat saya untuk berbagi. Mungkin dengan begini dunia Opensource Indonesia mulai marak dengan memakai server *niX terlebih dahulu dimulai dari Warnet, Instansi dan Institusi yg kahirnya bisa merebak ke Msyaratakat secara kelompok atau pun personal homers.
Download packet squid di http://fresh.t-systems-sfr.com/unix/src/www/index_t.html (squid-2.5.STABLE10-20050525.tar.gz)
eth0 : 192.168.1.88
eth1: 192.168.0.1
Lakukan pengektrakan file dimulai :
[root@gembels root]# tar xzvf squid-2.5.STABLE2.tar.gz
[root@gembels root]# cd squid-2.5.STABLE2
Buat user untuk menjalankan squid nantinya, NO ROOT untuk menjalankannya,
dan jangan beri shell (eq:/bin/bash) thd user yang menjalankanya.
[root@gembels root]#useradd -d /usr/local/squid/ -r -s /dev/null squid > /dev/null 2>&1
Ada baiknya bagi serer proxy yang sibuk untuk menaikkan nilai file deskriptor,
#define __FD_SETSIZE 1024 (default, normalnya 10 request/detik)
[root@gembels squid-2.5.STABLE2]vi +62 /usr/include/bits/types.h
#define __FD_SETSIZE 8192
[root@gembels squid-2.5.STABLE2]# ulimit -HSn 8192
Dan jangan lupa setelah installasi selesai,
silahkan untuk mengkonfigurasi kernel anda agar file deskriptor tsb berguna,
[root@gembels root]# vi /etc/sysctl.conf
fs.file-max = 8192
[root@gembels root]# sysctl -p /etc/sysctl.conf
Kompilasi dimulai,
[root@gembels squid-2.5.STABLE2]#
./configure \
--prefix=/usr/local/squid \
--exec-prefix=/usr/local/squid \
--enable-delay-pools \
--enable-cache-diggests \
--enable-poll \
--disable-ident-lookups \
--enable-snmp
dimana:
--enable-delay-pools: supaya bisa menggunakan pembatasan bandwith
--disable-ident-lookups: mengurasi dos
[root@gembels squid-2.5.STABLE2]# make
[root@gembels squid-2.5.STABLE2]# make install
Sekarang masuk ke bagian configurasinya
[root@gembels root]# vi /usr/local/squid/etc/squid.conf
Saat ini karena masih hangat dengan acl (access control),
Lets Rock `n Roll!!
------------- cut -----------------------------------
http_port 3128 #port 3128 dipakai untuk melisten squid di ip tsb
#Parameter ini berfungsi supaya halaman web dinamik tidak masuk ke dalam cache
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
#Parameter cache_mem akan membatasi pemakaian RAM untuk digunakan Squid,
#umumnya pemakaian RAM ini menggunakan aturan sepertiga dari RAM komputer.
#Ukuran file maksimum bisa dibatasi, terutama jika alokasi cache anda tidak
#terlalu besar, sedangkan ukuran minimum file yang dicache bertujuan
#mengefektifkan filesystem dimana biasanya ext2 diformat dengan 4 KB setiap inode.
cache_mem 20 MB
maximum_object_size 256 KB
minimum_object_size 4 KB
#ACCESS CONTROL
#mem blok situs keywords (sex,adult,porn,nude)
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl user src 192.168.0.0/255.255.0.0 #IP LAN
acl porno url_regex -i "/usr/local/squid/etc/porno.txt" #url yang diblok dan kalau tidak ada filenya silahkan dibuat dulu
http_access deny user porno
http_access allow user
http_access deny all
-----------------------------------------------------
sekarang kita akan membatasi download
yang dibatasi ada beberapa file (*.mpeg .wav .mp3) dan lainya
dimana pada configure tadi kita telah mengenable kan option
--enable-delay-pools
--------------- cut ---------------------------------
#Kita tidak ingin membatasi download pada range ip 192.168.0.0-192.168.255.255
acl LAN url_regex -i 192.168.
#Batasi dl pada jenis file berikut
acl extensions url_regex -i ftp .exe .mp3 .vqf .tar.gz .gz .rpm .zip .rar
.avi .mpeg .mpe .mpg .qt .ram .rm .iso .raw .wav
#saat ini kita mempunya 2 jenis delay pools
delay_pools 2
#yang pertama kita tidak ingin membatasi dlnya,
#yang kedua akan dibatasi dlnya
delay_class 1 2
#-1/-1 berarti tidak ada batasan untuk delay pools 1
delay_parameters 1 -1/-1 -1/-1
delay_access 1 allow LAN
#sekarang delay pools ke 2 yang akan dibatasin
delay_class 2 2
#5000/128000 jumlah bytes untuk seluruh network
#2000/100000 jumlah bytes untuk satu client
#setelah dl mencapai batas maximum 128000 bytes
#maka download akan mandapat -+ 5000 bytes
#
delay_parameters 2 5000/128000 2000/100000
delay_access 2 allow extensions
------------ cut -----------------------------------------
Berikut full contoh configurasi yang saya pakai akhirnya yang di bedah dari ibank.port5.com dan linux.prabumulih.com :
=========================================================
http_port 3128
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_mem 128 MB
maximum_object_size 256 KB
minimum_object_size 4 KB
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl user src 192.168.0.0/255.255.0.0
acl porno url_regex -i "/usr/local/squid/etc/porno.txt"
http_access deny user porno
http_access allow user
http_access deny all
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_single_host off
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
acl LAN src 192.168.0.1-192.168.0.100/32
acl extensions urlpath_regex -i ftp \.mp3$ \.zip$ \.bmp$ \.ram$ \.rmi$ \.pdf$ \.tgz$ \.gz$ \.exe$ \.mov$ \.mpg$ \.wav$ \.asf$ \.rpm$ \.iso$ \.wmv$ \.mpeg$ \.wma$
delay_pools 2
delay_class 1 2
delay_parameters 1 -1/-1 -1/-1
delay_access 1 allow LAN
delay_access 1 deny all
delay_access 2 allow user extensions
delay_access 2 deny all
delay_class 2 2
delay_parameters 2 8000/8000 1000/1000
cache_replacement_policy heap GDSF
memory_replacement_policy heap GDSF
cache_dir aufs /usr/local/squid/var/cache 2000 16 256
cache_store_log none
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563
acl Safe_ports port 80
acl Safe_ports port 21
acl Safe_ports port 443 563
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 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 user
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
acl our_networks src 192.168.0.0/24 192.168.1.0/24
http_access allow our_networks
http_access deny all
http_reply_access allow all
icp_access allow all
cache_mgr gembels@gmail.com
cache_effective_user squid
cache_effective_group squid
visible_hostname ngetopbox
logfile_rotate 0
log_icp_queries off
cachemgr_passwd /var/www/passwd info stats/objects
buffered_logs on
=========================================================
Setelah config file selesai (walaupun hanya potongan saja), distart squid dengan cara :
#/etc/init.d/squid -z
#/etc/init.d/squid -D
Nah biasanya klo error pasti pada cache kalau ndak ya sokor...
Untuk memastikan jalan squidnya
#ps ax|grep squid
[root@gembels root]# ps ax|grep squid
31256 ? S 0:00 squid -D
31258 ? S 22:00 (squid) -D
1321 pts/2 S 0:00 grep squid
Berarti Ok!
dan agar ketika waktu booting squid langsung up, maka kita letakkan di /etc/rc.local
[root@gembels root]#vi /etc/rc.local
/etc/init.d/squid start
Ada baiknya kita membuat rotasi untuk log squid,
Hal ini agar partisi squid tidak penuh, dan akan dilakukan per tiap.
[root@gembels root]# vi /etc/logrotate.d/squid
/usr/local/squid/var/access.log {
weekly
rotate 5
copytruncate
compress
notifempty
missingok
}
/usr/local/squid/var/cache.log {
weekly
rotate 5
copytruncate
compress
notifempty
missingok
}
/usr/local/squid/var/store.log {
weekly
rotate 5
copytruncate
compress
notifempty
missingok
postrotate
/usr/local/squid/sbin/squid -k rotate
endscript
}
[root@gembels root]#/sbin/iptables -t nat -A PREROUTING -i eth1 -p tcp -s 192.168.0.0/24 --dport 80 -j DNAT --to 192.168.0.1:3128
Asumsi squid di set menggunakan port 3128, IP Address Proxy Server=192.168.0.1
Kalo untuk restart atau melakukan perubahan confignya
#/etc/init.d/squid start -k reconfigure
atau cukup
#squid start -k reconfigure
Referensi:
Ibank.port5.com, linux.prabumulih.com, Uncle Google, #Indolinux DALNET touch dekil untuk details banged, vitux, om praban, slax, MigrainBoy, setrom, soRos dan rekan lainnya..
Wednesday, 15 October 2008
sQuid seRver
Label:
Tugas 3TKJ
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment