NAMA : Reinaldo J.H | PROXY | TANGGAL : 26-01-2011 |
KELAS : 3 TKJ A | PEMATERI : PAK DODI & PAK NUSIRWAN | |
SMKN 1 CIMAHI | ADMIN SERVER |
Proxy server (peladen proxy) adalah sebuah komputer server atau program komputer yang dapat bertindak sebagai komputer lainnya untuk melakukan request terhadap content dari Internet atau intranet.
Proxy Server bertindak sebagai gateway terhadap dunia ini Internet untuk setiap komputer klien. Proxy server tidak terlihat oleh komputer klien: seorang pengguna yang berinteraksi dengan Internet melalui sebuah proxy server tidak akan mengetahui bahwa sebuah proxy server sedang menangani request yang dilakukannya. Web server yang menerima request dari proxy server akan menginterpretasikan request-request tersebut seolah-olah request itu datang secara langsung dari komputer klien, bukan dari proxy server.
Proxy server juga dapat digunakan untuk mengamankan jaringan pribadi yang dihubungkan ke sebuah jaringan publik (seperti halnya Internet). Proxy server memiliki lebih banyak fungsi daripada router yang memiliki fitur packet filtering karena memang proxy server beroperasi pada level yang lebih tinggi dan memiliki kontrol yang lebih menyeluruh terhadap akses jaringan. Proxy server yang berfungsi sebagai sebuah "agen keamanan" untuk sebuah jaringan pribadi, umumnya dikenal sebagai firewall.
Squid adalah sebuah daemon yang digunakan sebagai proxy server dan web cache. Squid memiliki banyak jenis penggunaan, mulai dari mempercepat server web dengan melakukan caching permintaan yang berulang-ulang, caching DNS, caching situs web, dan caching pencarian komputer di dalam jaringan untuk sekelompok komputer yang menggunakan sumber daya jaringan yang sama, hingga pada membantu keamanan dengan cara melakukan penyaringan (filter) lalu lintas. Meskipun seringnya digunakan untuk protokol HTTP dan FTP, Squid juga menawarkan dukungan terbatas untuk beberapa protokol lainnya termasuk Transport Layer Security (TLS), Secure Socket Layer (SSL), Internet Gopher, dan HTTPS. Versi Squid 3.1 mencakup dukungan protokol IPv6 dan Internet Content Adaptation Protocol (ICAP).
Langkah-langkah yang saya lakukan:
Instal aplikasi squid
Edit file konfigurasi squid
Buat direktori dan file blacklist untuk blacklist secara manual
Buat direktori dan file untuk pesan error dalam bahasa indonesia
Check konfigurasi firewall yang diterapkan di proxy
Jalankan servicenya
Test konfigurasi di proxy dan client
File konfigurasi squid: /etc/squid/squid.conf (versi saya)
#SQUID 2.6.STABLE12
#Author by: http://fxekobudi.net
# OPTION JARINGAN
# —————————————————————————–
http_port 3128
icp_port 0
# OPTION UKURAN CACHE
# ——————————————————————-
cache_mem 256 MB
cache_swap_low 94
cache_swap_high 96
maximum_object_size 16384 KB
minimum_object_size 4 KB
maximum_object_size_in_memory 2048 KB
fqdncache_size 1024
cache_replacement_policy heap GDSF
memory_replacement_policy heap GDSF
# DIREKTORI LOG DAN CACHE
# ——————————————————————
cache_dir aufs /var/spool/squid 9000 16 256
access_log /var/log/squid/access.log squid
cache_log /var/log/squid/cache.log
cache_store_log none
# TUNING CACHE PROXY
# ——————————————————————
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
negative_ttl 1 minutes
# TIMEOUT
# —————————————————————–
half_closed_clients off
# ————————————-
# Memblok situs terlarang (blacklist)secara manual
# ————————————-
acl noblacklist dstdomain “/etc/squid/blacklist/no-blacklist.txt”
acl katablacklist url_regex -i “/etc/squid/blacklist/kata-blacklist.txt”
acl domainblacklist dstdomain “/etc/squid/blacklist/domain-blacklist.txt”
acl ipblacklist dst “/etc/squid/blacklist/ip-blacklist.txt”
acl tdkbebasdownload time 08:00-13:00
# AKSES KONTROL
# ——————————————————————
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
# ————————————-
# Daftar IP address
# ————————————-
acl lab1 src 192.168.254.1-192.168.254.40/255.255.255.255
acl staf-it src 192.168.254.41-192.168.254.42/255.255.255.255
acl lab2 src 192.168.254.43-192.168.254.44/255.255.255.255
acl ruang1 src 192.168.1.1-192.168.1.8/255.255.255.255
acl ruang2 src 192.168.1.11-192.168.1.17/255.255.255.255
# ————————————-
# Memblok situs terlarang secara manual
# ————————————-
http_access allow noblacklist
http_access deny katablacklist
http_access deny domainblacklist
http_access deny ipblacklist
http_access allow manager localhost
http_access deny manager
# ————————————-
# Rule yang saya terapkan
# ————————————-
http_access allow lab1
http_access allow staf-it
http_access allow lab2
http_access allow ruang1
http_access allow ruang2
acl magic_words2 url_regex -i ftp .exe .mp3 .vqf .tar.gz .gz .tar.bz2 .bz2 .rpm .zip .rar .avi .mpeg .mpe .mpg .qt .ram .rm .raw .wav .iso
# Cancel download if file is bigger than 2 MB = 2000×1024 byte = 2048000 byte
reply_body_max_size 2048000 allow magic_words2 tdkbebasdownload
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access deny all
http_reply_access allow all
icp_access allow all
# PARAMETER ADMINISTRATOR
# —————————————————————–
cache_mgr fxekobudi@gmail.com
cache_effective_user squid
cache_effective_group squid
visible_hostname proxy.fxekobudi.local
# PESAN ERROR DALAM BAHASA INDONESIA
# ——————————————————————–
error_directory /usr/share/squid/errors/Indonesian
Agar fungsi blacklist manual itu dapat digunakan, buat direktori berisi file-file disebutkan dalam blacklist manual:
# mkdir /etc/squid/blacklist
# cd /etc/squid/blacklist/
# vim no-blacklist.txt
# vim kata-blacklist.txt
# vim domain-blacklist.txt
# vim ip-blacklist.txt
delay pool
Ada beberapa tag konfigurasi untuk delay pools di file squid.conf di squid box.
1. delay_pools (jumlah)
menyatakan berapa banyak bagian/pool yang akan dibuat
misal delay_pools 2
2. delay_class (bagian tipe/class)
menentukan klas/tipe pembagian bandwith dari setiap pool. 1 pool hanya boleh memiliki 1 clas, tidak lebih atau kurang.
bagian merupakan nomer urut dari jumlah pool didelay pool, jadi ada 1 s/d n bagian dimana n merupakan angka jumlah pada delay_pools
tipe merupakan tipe class delay yang dipakai.
Secara umum tipe menyatakan bagaimana cara membagi bandwidth, ada 3 tipe:
TIPE 1: semua bandwidth yang ada akan dibagi sama rata untuk semua user squid
TIPE 2: membatasi pemakaian bandwith dari total bandwidth yang ada, dan bandwith yang diperuntukan squid akan dibagi semua user dengan sama rata.
TIPE 3: membatasi pemakaian bandwidth dari total bandwidth yang ada, setiap network class C akan mendapat bandwidth sama besar, setiap user pernetwork akan mendapat bandwidth yang sama besar dari total bandwidth per network
CONTOH TIPE DIATAS:
TIPE 1: ex ada bandwidth 128 dan semua bandwith dipakai untuk browsing
TIPE 2: ex ada bandwidth 128 dimana 28 kbit dipakai untuk email dan sisanya (128-28) 100 kbit dipakai untuk browsing
TIPE 3:
ex: bandwidth tersedia 512 kb, untuk browsing disediakan bandwidth 384 kb, sisanya untuk aktifitas lain.
Di jaringan tersebut ada 3 departement dengan network yang berbeda misal lab (192.168.1.0/24), manajer(192.168.2.0/24), sales(192.168.3.0/24).
nah misah oleh admin di set bahwa pernetwork mendapat jatah 128 kb/s.
maka user2 di sales akan mendapat pembagian bandwidth sama besar dari total 128 kb/s.
maka user2 di lab akan mendapat pembagian bandwidth sama besar dari total 128 kb/s.
maka user2 di manajer akan mendapat pembagian bandwidth sama besar dari total 128 kb/s.
3.delay_access (bagian acl)
Memberi batasan siapa saja yang boleh mempergunakan delay pools ini.
Penting untuk diingat sebaiknya setelah menetukan batasan jangan lupa di akhiri dengan deny all.
misal:
delay_access 1 allow manajer
delay_access 1 deny all
delay_access 2 allow sales
delay_access 2 deny all
4. delay_parameters (restore/max)
Ini adalah bagian terpenting dari delay pools memberikan aturan main setiap delay pools yang dibentuk.
delay parameter mempunyai format yang disesuaikan dengan tipe/class yang dipakai.
Tapi disetiap tipe yang dipakai ada 1 format baku yaitu restore/max.
restore menunjukkan maksimum kecepatan data yang dapat dilewatkan bila harga max sudah terlampaui, dalam satuan bytes/second
max menunjukkan besar-nya file atau bucket yang dapat dilewatkan tanpa melalui proses delay. dalam satuan bytes.
Yang perlu diperhatikan dari satuan diatas adalah harga restore dimana kita sering menerima/menyewa/membeli bandwidth dari provider dalam satuan bits/second bukan bytes/second. Sedangkan satuan kecepatan yang ditunjukkan oleh Microsoft pada saat mendonlot file adalah bytes/sec.
Sedangkan satuan dari harga max sudah sesuai dengan kebiasaan sehari-hari, dimana kita memberi besaran bytes pada file-file.
1 byte = 8 bit.
SpesialCase: -1/-1 berarti unlimited atau tidak dibatasi pada nilai restore/max
ex: 1000/64000 harga restore sama dengan 8000 bits/sec atau 8 kbits/sec.
Yang artinya user akan mendapat donlot brustable selama file yang akan dibuka lebih kecil dari 64 kbytes, jadi kecepatan bisa diatas 8 kbit/sec.
Bila ternyata file yang dibuka melebihi 64 bytes, maka proses limitasi akan segera dimulai dengan membatasi kecepatan maksimal 8 kbits/s.
class 1
...delay_parameters (#pool individual)
...ex: delay_parameters 1 1000/64000
...Berarti semua network akan mendapat bandwidth yang sama di pool no 1.
...Sebesar 1 kbytes/sec (8 kbits/sec), dengan burstable file 64 kb.
class 2
...delay_parameters (#pool agregate individual)
...ex: delay_parameters 1 32000/32000 1000/64000
...Berarti squid akan memakai bandwidth maksimum (32000*8) 256kbits dari semua bandwidth.
...Bila terdapat lebih dari 1 network class C, maka total yang dihabiskan tetap 256 kbit/sec
...dan tiap user akan mendapat bandwidth maksimum 1 kbytes/sec (8 kbits/sec), dengan burstable file 64 kb.
class 3
...delay_parameters (#pool agregate network individual)
...ex: delay_parameters 1 32000/32000 8000/8000 1000/64000
...Berarti squid akan memakai bandwidth maksimum (32000*8) 256kbits dari semua bandwidth.
...Bila terdapat lebih dari 1 network class C, maka setiap network akan dipaksa maksimum sebesar (8000*8) 64 kbits/sec
...dan tiap user pada satu network akan mendapat bandwidth maksimum 1 kbytes/sec (8 kbits/sec), dengan burstable file 64 kb.
0 komentar:
Posting Komentar