Rabu, 13 Juli 2011

Membuat warnet dengan squid

Sekarang banyak dibuka warnet warnet baru di Indonesia dan khususnya di Jogja.
Ada banyak faktor yang menyebabkan, diantaranya yaitu :
  1. Banyak mahasiswa, sehingga ini adalah pasar yang sangat besar untuk sebagai lahan bisnis
  2. Akses internet melalui speedy semakin murah untuk unlimited
  3. Harga komputer semakin murah
Sebagai contoh disini yaitu menggunakan koneksi internet dari speedy dengan bandwidth 1Mbps dan peralatan yang digunakan yaitu :
  1. 1 Server Windows XP dengan 2 Lan Card
  2. 8 Buah PC Client dengan 1 Lan Card
  3. 1 Buah Switch/Buh 12 Port
  4. Kabel UTP+konektor secukupnya
  5. Koneksi ke Speedy dengan Modem ADSL
Disain jaringan
Keterangan :
  1. Server memakai Windows dengan IP 192.168.1.1
  2. Dialup Speedy menggunakan komputer server
  3. Client dibagi dua bagian, yaitu A dengan IP 192.168.1.11 s.d 192.168.1.14 dan B untuk IP 192.168.0.11 s.d. 192.168.0.14
Konfigurasi standar Squid yaitu :
(diambil dari linux dengan perintah # grep -v “^#” /etc/squid/squid.conf | sed -e ‘/^$/d’)
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
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
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
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 CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access deny all
icp_access allow all
http_port 3128
hierarchy_stoplist cgi-bin ?
access_log /var/log/squid/access.log squid
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
coredump_dir /var/spool/squid
Dalam rancangan disain squid untuk warnet kali ini akan dibuat dengan spesifikasi sebagai berikut:
  1. Penggunaan Bandwidth 1Mbps diatur dengan cara sebagai berkut:
    1. Klien A dan B dibagi rata dengan penggunaan bandwidth total pergroup 512 Kbps
    2. Jam sepi , yaitu antara jam 03.01 s.d. 10.00 dan sepanjang hari untuk hari minggu
      1. Maksimal 768 Kbps untuk download yang dibagi sama rata
      2. Untuk browsing minimal 256 Kbps
    3. Jam ramai, yaitu antara jam 10.01 s.d. 03.00
      1. Maksimal 512 Kbps untuk download yang dibagi sama rata
      2. Untuk browsing minimal 512 Kbps
    4. Komputer admin, yaitu server, tidak dilakukan pembatasan bandwidth, kecuali untuk download tetap dibatasi agar tidak mengganggu klien yaitu sebesar maksimal 256 Kbps

  1. Yang dimaksud download, yaitu
    1. melakukan akses internet untuk file-file berikut : tar tar.gz zip rar avi swf flv mpeg mpg mp4 mp3 wav dan sejenisnya
    2. Download maksimal saat ramai ukuran maksimal yang diijinkan yaitu 100MB dan saat sepi yaitu 750MB, selebihnya harus melalui admin
    3. Komputer admin 192.168.1.1 dijadikan server lokal, dimana download dari server lokal tidak dilakukan pembatasan
  2. Melakukan blok atas situs porno
  3. Melakukan blok atas iklan
Maka konfigurasi squid.conf nya yaitu :
(Konfigurasi dibuat di Centos , untuk dipakai di Windows diperlukan penyesuaikan alamat folder)
#Default saja
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
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
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
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 CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
# Definisi waktu
acl sepi1 time S 00:00-23:59
acl sepi2 time MTWHFA 03:01-10:00
acl ramai1 time MTWHFA 10:01-23:59
acl ramai2 time MTWHFA 00:00-03:00
#Definisi LAN
acl lan_b src 192.168.0.0/24
acl lan_a src 192.168.1.0/24
acl admin src 192.168.1.1/255.255.255.255
#Definisi Filter Porno & Iklan
acl porno url_regex -i “/etc/squid/porno.conf”
http_access deny porno
acl iklan url_regex -i “/etc/squid/iklan.conf”
http_access deny iklan
#Nyatakan hak akses
http_access allow admin
http_access allow lan_b
http_access allow lan_a
http_access allow localhost
http_access deny all
icp_access allow all
#Definisi lokal server
#Dilakukan sebagai domain, karena tidak ada DNS server lokal
acl local-servers dstdomain 192.168.1.1
#Definisi 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
#Pembatasan ukuran maksimal download
reply_body_max_size 0 allow local-servers
reply_body_max_size 0 allow admin
reply_body_max_size 786432000 allow download sepi1
reply_body_max_size 786432000 allow download sepi2
reply_body_max_size 104857600 allow download ramai1
reply_body_max_size 104857600 allow download ramai2
reply_body_max_size 0 deny download
#Definisi Network (Default saja)
http_port 3128
hierarchy_stoplist cgi-bin ?
access_log /var/log/squid/access.log squid
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320/etc/squid/porno.conf
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
connect_timeout 5 minute
cache_mgr “kusprayitna”
visible_hostname warnet
#Definisi pengaturan Download
# -1 berarti unlimited
# Class 2 untuk pengaturan LAN & Host
# Class 3 untuk pengaturan seluruh Lan s.d host
# nilai parameter 256kps = 256*125 = 32000
delay_pools 5
delay_class 1 2
delay_parameters 1 -1/-1 -1/-1
delay_class 2 2
delay_parameters 2 -1/-1 32000/32000
delay_class 3 3
delay_parameters 3 128000/128000 64000/64000 16000/64000
delay_class 4 3
delay_parameters 4 96000/96000 48000/48000 12000/48000
delay_class 5 3
delay_parameters 5 64000/64000 32000/32000 8000/32000
# Terapkan pembagian bandwidth
# 1. Tanpa pembataasan untuk akses download dari lokal
# 2. Admin dibatasi maksimal 256kbps agar tidak mengganggu lainnya
# 3. Waktu sepi bandwidth 768 dibagi 2 lan, setiap lan 4 PC
# 4. Waktu ramai bandwidth 512 dibagi 2 lan, setiap lan 4 PC
delay_access 1 allow local-servers
delay_access 2 allow download admin
delay_access 2 deny all
delay_access 4 allow download sepi1
delay_access 4 allow download sepi2
delay_access 4 deny all
delay_access 5 allow download ramai1
delay_access 5 allow download ramai2
delay_access 5 deny all
# untuk akses ke server lokal tidak lewat proxy
always_direct allow local-servers
dns_nameservers 192.168.1.1
coredump_dir /var/spool/squid
Sedangkan untuk file yang disertakan yaitu :
/etc/squid/porno.conf berisikan :
xxx
bugil
playboy
password
warez
/etc/squid/iklan.conf berisikan :
[\./]ad[s]?[\./]
[\./].swf[\./]
    banner
    reklame
    reclama
    promo

Tidak ada komentar:

Posting Komentar

Jangan lupa Postingkan komentar.....!!!!!!