Senin, 29 November 2010

Cara Konfigurasi Proxy

Sebelumnya, pastikan proses internet gateway (routing)sudah berjalan dalam komputer ini.
eth0 digunakan untuk ip internet
eth1, ip LAN

1. Instalasi
Pertama-tama install terlebih dahulu squid melalui synaptic atau melalui command prompt dengan cara :
# apt-get install squid
Setelah selesai maka Squid langsung dapat di konfigurasikan dengan cara :
# vi /etc/squid/squid.conf
Tetapi sebelum di edit terlebih dahulu backup dulu file aslinya agar kalau rusak bisa dikembalikan ke default :
# cp /etc/squid/squid.conf /etc/squid/squid.conf.bak

2. Konfigurasi Squid
Selanjutnya konfigurasi script Squid :
# vim /etc/squid/squid.conf
Akan muncul file konfigurasi squid yang sangat panjang, berikut langkah-langkah yang harus diperhatikan….
a. HTTP Port : Merupakan port yang digunakan untuk menjalankan Squid
# http_port 3128
http_port 192.168.10.1:8080
#log dan error
access_log /var/log/squid/access.log squid
error_directory /usr/share/squid/errors
logfile_rotate 7

b. Visible Host Name : Agar jika terjadi error Squid dapat menemukan hostname yang valid
visible_hostname localhost
localhost bisa diganti menjadi ip (e.g 192.168.10.254) atau domain seperti proxykoe.com
c. Cache Manager : Untuk mendefinisikan email address dari Cache Manager Squid
cache_mgr admin@domain.com
d. Direktori Cache Squid : Mendefinisikan letak direktori squid beserta besarannya.
Angka 500 menunjukkan ukuran direktori dalam MB
Angka 16 menunjukkan jumlah sub direktori tingkat 1
Angka 256 menunjukkan jumlah subdirektori tingkat 2 dari subdirektori tingkat 1
Jumlah diatas makin besar makin baik
cache_dir ufs /var/spool/squid 500 16 256
e. Filtering : Ini merupakan bagian terpenting dari Squid, dengan ini kita bisa mngatur rule-rule, dari mulai siapa saja yang bisa mengakses internet sampai website apa yang diizinkan untuk di akses.

Access List (acl) : Siapa saja yang dapat mengakses Internet
acl all src all
acl manager proto cache_object
acl localnet src 192.168.10.1/255.255.255.0
#############################################################
### BANDWIDTH MANAJEMEN
##############################################################
acl admin src “/etc/squid/admin
acl situs url_regex “/etc/squid/situs”
acl download urlpath_regex “/etc/squid/download”
#################################################################
acl denied_domains dstdomain “/etc/squid/denied_domains.acl”

http_access allow manager localhost
http_access deny manager
# Only allow purge requests from localhost
http_access allow purge localhost
http_access deny purge
http_access allow localhost
http_access allow admin
http_access deny workhours denied_domains
http_access allow localnet
http_access deny all
# Deny requests to unknown ports
http_access deny !Safe_ports
# Deny CONNECT to other than SSL ports
http_access allow CONNECT !SSL_ports

#delay pools 0, untuk bandwidth management
delay_pools 3
delay_class 1 1
delay_class 2 1
delay_class 3 1
#unlimitted access untuk admin
delay_parameters 1 -1/-1
delay_access 1 allow admin
delay_access 1 deny all
#pembatasan kecepatan akses untuk “situs” dimana kecepatan maksimum hanya 2kbps jika #besarnya situs lebih dari 64kB
delay_parameters 2 2000/64000
delay_access 2 allow situs
delay_access 2 deny all
#pembatasan kecepatan akses untuk “download” dimana kecepatan maksimum hanya 1kbps jika #besarnya download lebih dari 32kB
delay_parameters 3 1000/32000
delay_access 3 allow download
delay_access 3 deny all

keluar dari squid.conf dan menyimpan yang sudah dirubah dengan perintah
:wq

bagaimana dan apa saja yang membatasi akses sudah kita nyatakan perintahnya dan Access List,
acl admin src “/etc/squid/admin
maka yang pertama kita lakukan adalah membuat dan menuliskan apa saja yang dalam “admin”, dengan cara:
vim /etc/squid/admin

192.168.10.26
192.168.10.5
192.168.10.4
192.168.10.100
192.168.10.102
192.168.10.157
192.168.10.249
192.168.10.250
192.168.10.15
192.168.10.14

Keluar dan simpan, dengan perintah, :wq
Maka IP-IP di atas, adalah IP yang mendapat hak penuh sebagai admin.

acl situs url_regex “/etc/squid/situs”
– vim /etc/squid/situs
gudangupload
easyshare
savefile
megaupload
share
boxing
tube
movie
facebook

Keluar dan simpan, dengan perintah, :wq

acl download urlpath_regex “/etc/squid/download”, diedit dengan perintah:
vim /etc/squid/download, dan dituliskan
./doc$
./exe$
./pdf$
./xls$
./docx$
./mpeg$
./tar.gz$
./tar.bz2$
./mp3$
./jpg$
./jpeg$

Keluar dan simpan, dengan perintah, :wq

IP Forwarding, agar transparent proxy dapat diterapkan, maka kita harus mengaktifkan Ip Forwarding dengan memberikan nilai 1 pada file “/proc/sys/net/ipv4/ip_forward” dengan cara :

# echo 1 > /proc/sys/net/ipv4/ip_forward

Tetapi perintah tersebut harus kita jalankan auto startup, agar jika komputer squid mati kita tidak perlu repot2 menjalankan perintah tersebut secara terus menerus.
Berikutnya kita harus menjalankan ip_tables agar client dapat meredirect port squid server kita dengan perintah :

# iptables -A PREROUTING -t nat -p tcp –dport 80 -j REDIRECT –to-port 8800

Kemudian restart proxy dengan perintah :
# /etc/init.d/squid restart

Tidak ada komentar:

Posting Komentar