You are on page 1of 9

Kumpulan FAQ Proxy transparent

Transparent Proxy

Pada tutorial sebelumnya, kita sudah mempelajari apa itu squid dan bagaimana cara
mengkonfigurasinya dan disertai dengan erbagai macam kasus. Namun, perlu diketahui
bahwa jika kita menggunakan konfigurasi tersebut maka kita harus men-setting secara
manual setting-an proxy di web browser agar dapat berinternet. Nah, bagaimana jika
computer yang harus disetting berjumlah ratusan? Apalagi jika suatu saat ada perubahan IP
dan port proxy server yang digunakan, tentu akan sangat merepotkan sekali.

Untuk menyiasati hal tersebut, diperlukan suatu cara agar kita tidak perlu memasukkan
secara manual settinga-an proxy yang berlaku yaitu dengan menggunakan transparent
proxy. Prinsip kerja transparent proxy adalah sebuah firewall atau redirector lainnya akan
menangkap koneksi TCP yang ditujukan ke port tertentu ke port tertentu pada remote host,
dan kemudian akan mengarahkan koneksi TCP tersebut ke proxy server lokal. Proxy server
menggunakan header HTTP untuk menentukan ke mana proxy akan melakukan koneksi dan
request dari mana yang akan di-proxy. Untuk mengaplikasikan transparant proxy, Anda
dapat memerlukan aplikasi Iptables. Dengan Iptables, anda cukup membuat rule untuk
menangkap trafik yang ditujukan untuk port 80, dan mengarahkan trafik ini ke port dari
proxy server (biasanya 3128 atau 8080). Konfigurasi untuk membuat transparent proxy
terbagi dua yaitu konfigurasi di dalam server dimana firewall dan squid digabung dan
konfigurasi di dalam server dimana firewall dan squid terpisah.

II. Syarat-Syarat Transparent Proxy

Untuk dapat menjalankan transparent proxy, maka syarat-syarat dibawah ini harus
terpenuhi:
1. Pastikan proxy sudah terinstal dalam sistem.
2. Pastikan paket dan service iptables sudah terinstal dalam sistem.
3. Squid terkonfigurasi dengan menggunakan port 3128.

www.almuhibbin.com
Kumpulan FAQ Proxy transparent

III. KONFIGURASI TRANSPARAN PROXY

1. Masuk ke file sysctl.conf di /etc/sysctl.conf dan mengubah nilainya pada bagian


ip_forward dari 0 menjadi 1 sehingga akan menjadi seperti berikut:
net.ipv4.ip_forward = 1

Jika sudah selesai, restart network dengan cara:


# sysctl -p

2. Edit file squid.conf, kemudian tambahkan baris dibawah ini pada bagian paling bawah
dari file ini:

# transparent proxy
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

3. Lakukan masquerading dengan menggunakan iptables. IP masquerading berguna untuk


menghubungkan beberapa komputer yang terkoneksi ke sebuah komputer yang sudah
terkoneksi ke Internet agar dapat mengakses ke Internet, atau istilahnya Internet
Connection Sharing.
iptables -A POSTROUTING -j MASQUERADE -t nat -s 192.168.0.0/24 -o eth0

Option -o tersebut tolong disesuaikan dengan interface yang terdekat dengan jaringan luar.
4. Selanjutnya arahkan semua permintaan web pada port 80 ke port squid. Untuk kondisi
ini, terdapat dua buah opsi. Jika squid dan firewall yang mengarahkan berada pada satu
komputer, gunakan perintah ini:
iptables -t nat -p tcp -A PREROUTING -s 192.168.0.0/24 -d 0/0 –dport 80 -j REDIRECT –to-
ports 3128

Tapi, Jika Squid dan firewall yang mengarahkan tidak berada pada satu komputer maka
ikuti langkah berikut:
5. Misal Squid berada pada komputer yang ber-IP 192.168.0.4 dan port yang digunakan
adalah 3128 atau kita sebut saja komputer ini dengan nama squid-box. Dan satunya lagi
komputer yang terhubung ke Internet langsung sebagai firewall mempunyai IP 192.168.0.1
kita sebut saja komputer ini dengan nama iptables-box. Dari komputer iptables-box, coba
Anda ketikkan perintah berikut untuk mengaktifkan transparant proxy di mesin squid-box.

iptables -t nat -A PREROUTING -i eth0 -s ! 192.168.0.4 -p tcp --dport 80 -j DNAT --to


192.168.0.4:3128
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -d 192.168.0.4 -j SNAT –to
192.168.0.1
iptables -A FORWARD -s 192.168.0.0/24 -d 192.168.0.4 -i eth0 -o eth0 -p tcp --dport 3128
-j ACCEPT

www.almuhibbin.com
Kumpulan FAQ Proxy transparent

6. Setelah itu, coba amati file access.log di mesin proxy kita yang berada di folder
/var/log/squid, lalu ketikkan:
# tail -f access.log

Jika semuanya sudah benar, seharusnya jika ada user yang sedang mengakses web, Anda
sudah dapat mengamati prosesnya dari mesin proxy tersebut dan akan terlihat seperti
berikut:

REFERENSI

Jaringan Komputer Teori dan Implementasi Berbasis Linux, Wagito


Ilmukomputer.org
Dari Berbagai Sumber

16 Jumadal Ula 1430 H


11 Mei 2009 M
Comments
ocel |222.124.31.Xxx |2009-05-12 14:17:46

halo mas,minta tolong sekalian tutorialnya dong cara instal proxy, n paket dan service ip tabels nya juga, n konfigurasi
squidnya ke port 3128 or 8080. makasih

www.almuhibbin.com
Kumpulan FAQ Proxy transparent

Quote 00
catatan |SAdministrator |2009-05-13 11:12:56

Untuk Melihat tutorial squid, silahkan ke http://catatanlepas.com/computer/37-application/103-squid.html

Quote 00
ocel |125.167.229.Xxx |2009-05-14 10:08:21

-o eth0, Option -o tersebut tolong disesuaikan dengan interface yang terdekat dengan jaringan luar. maksudnya tu gmana ya
mas . q krang pham ni, tolong di bantu makasih

Quote 00
catatan |SAdministrator |2009-05-15 14:38:49

Begini maksud saya:


kita sesuaikan interface mana yang terdekat dengan jaringan luar. Karena sistem saya menggunakan eth0 untuk jaringan luar,
maka saya tulis -o eth0. Tapi jika mas menggunakan eth1 untuk jaringan luar, maka option tersebut berubah menjadi -o eth1.
Paham?

Quote 00
ocel |125.167.229.Xxx |2009-05-14 10:23:36

1. Pastikan proxy sudah terinstal dalam sistem. { proxy tu squidx ya mas }


2. Pastikan paket dan service iptables sudah terinstal dalam sistem.{ iptablesnya apa sdh ikut terinstal dengan bawaan centos
ya mas law iya untuk ngeceknya gmana ya mas, atau harus di instal lagi iptabelsx
3. Squid terkonfigurasi dengan menggunakan port 3128.{ cara mengarahkan ke port 3128 tu gmana ya mas, or pada saat kita
instal dan konfigurasi squid sudah terarah ke port3128 } makasih mas, sory law bxk nanya

Quote 00
catatan |SAdministrator |2009-05-15 14:56:37

1. Ya betul. Kalau ada kata-kata proxy di artikel ini berarti maksudnya squid karena saya menggunakan aplikasi proxy yang
bernama squid.

2. Umumnya paket Iptables sudah terinstal ketika kita menginstal linux. Untuk mengecek apakah paket tersebut sudah
terinstal atau belum, gunakan perintah berikut:

# rpm -qa | grep iptables

Dalam waktu dekat ini, saya akan membuat tutorial tentang iptables.

3. Port default untuk squid adalah 3128. Hal ini bisa dilihat di /etc/squid/squid.conf. Untuk lebih jelasnya, silahkan lihat di
sinihttp://catatanlepas.com/computer/37-application/103-squid.html

Gak apa-apa mas, banyak nanya berrati kita memang sungguh-sungguh di dalam mempelajari sesuatu. Saya pun banyak
nanya-nanya kok pada waktu belajar tentang ini dan mungkin kita bisa sharing pengetahuan .

Quote 00
ridho - Mr |202.146.180.Xxx |2009-06-20 10:18:28

Mas... numpang nanya... kalo tempat saya pake proxy yang diset di browser... nah saya buat server proxy sendiri untuk lan
saya... untuk setting squid.conf nya gimana yaa ... supaya tidak perlu setting2 proxy lagi di browser... ato perlu ada tambahan
??? saya udah baca2 tp lom ketemu2 :'( ... mohon pencerahan teman2

Quote 00
catatan |SAdministrator |2009-06-22 10:01:02

Agar seluruh PC mengarah ke server proxy, maka inilah yang dinamakan Transparent Proxy. Dan untuk mensetting file

www.almuhibbin.com
Kumpulan FAQ Proxy transparent

squid.confnya bisa dilihat di:

http://catatanlepas.com/komputer/37-aplikasi-linux/103-instalasi-dan-konfigurasi-squid.html

Dan juga perlu disetting iptablesnya seperti tutorial di atas.

Semoga Membantu

Quote 00
ika |222.124.193.Xxx |2009-09-04 12:31:29

mas nanyak ne, kok proxy transparan Q gak jalan y di client padahal squid -z run. eth1 192.168.3.135 (internet) eth0
192.168.2.1 (lan)
http_port 3128 transparent
icp_port 0

cache_mem 6 MB
cache_swap_low 94
cache_swap_high 96

cache_access_log /var/log/squid/access.log
cache_store_log /var/log/squid/store.log

maximum_object_size 16384 KB
minimum_object_size 4 KB
maximum_object_size_in_memory 2048 KB

# OPTION FOR TUNING THE CACHE


refresh_pattern -i ^ftp: 1440 50% 20160
refresh_pattern -i ^gopher: 1440 50% 20160

# FILE-FILE YANG JARANG BERUBAH


refresh_pattern -i \.bin$ 180 90% 20160 reload-into-ims
refresh_pattern -i \.cab$ 180 90% 20160 reload-into-ims
refresh_pattern -i \.dat$ 180 90% 20160 reload-into-ims
refresh_pattern -i \.exe$ 180 90% 20160 reload-into-ims
refresh_pattern -i \.flv$ 180 90% 20160 reload-into-ims
refresh_pattern -i \.msi$ 180 90% 20160 reload-into-ims
refresh_pattern -i \.rar$ 180 90% 20160 reload-into-ims
refresh_pattern -i \.zip$ 180 90% 20160 reload-into-ims
refresh_pattern -i \.swf$ 180 90% 20160 reload-into-ims
refresh_pattern -i \.css$ 120 80% 10080 reload-into-ims
refresh_pattern -i \.js$ 120 80% 10080 reload-into-ims
refresh_pattern -i \.pdf$ 90 80% 10080 reload-into-ims
refresh_pattern -i \.gif$ 45 70% 10080 reload-into-ims
refresh_pattern -i \.ico$ 45 70% 10080 reload-into-ims
refresh_pattern -i \.jpg$ 45 70% 10080 reload-into-ims
refresh_pattern -i \.png$ 45 70% 10080 reload-into-ims

# REFRESH LEBIH CEPAT UNTUK YANG SERING BERUBAH


refresh_pattern -i \.html$ 10 40% 4320
refresh_pattern -i \.htm$ 10 40% 4320
refresh_pattern -i \.xml$ 10 40% 4320
refresh_pattern . 25 60% 4320

fqdncache_size 1024
cache_replacement_policy heap GDSF
memory_replacement_policy heap GDSF

visible_hostname localhost

www.almuhibbin.com
Kumpulan FAQ Proxy transparent

cache_mgr admin@localhost
cache_effective_user squid
cache_effective_group squid

acl apache rep_header Server ^Apache


broken_vary_encoding allow apache
cache_mgr admin@proxy.sman5.com #nama admin squid
cache_effective_user squid
cache_effective_group squid
visible_hostname proxy.sman5.com #hostname unutk squid

# DEFAULT ACL
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 lan src 192.168.2.0/24
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563
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 280 # http-mgmt
acl safe_ports port 488 # gss-http
acl safe_ports port 591 # filemaker
acl safe_ports port 777 # multiling http

# MEMBLOCK SITUS TERLARANG (BLACKLIST) SECARA MANUAL


# _______________________________________________
acl porn url_regex "/etc/squid/acl/porn.txt"
acl noporn url_regex "/etc/squid/acl/noporn.txt"
acl ip-porn dst "/etc/squid/acl/ip-porn.txt"
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

http_access allow porn all


http_access allow noporn all
http_access deny porn all
http_access deny ip-porn all
http_access allow localhost

http_access allow all


http_access allow lan

acl PURGE method PURGE


acl CONNECT method CONNECT

http_access allow manager localhost


http_access deny manager

http_access allow PURGE localhost


http_access deny PURGE

http_access deny !safe_ports


http_access deny CONNECT !SSL_ports
http_access deny to_localhost
acl our_networks src 192.168.2.0/24 192.168.3.0/24
http_access allow our_networks

http_reply_access allow lan

www.almuhibbin.com
Kumpulan FAQ Proxy transparent

http_reply_access allow localhost


http_reply_access deny all
http_reply_access allow all

icp_access allow lan


icp_access allow localhost
icp_access deny all
icp_access allow all

http_access allow localhost


http_reply_access allow all
http_access deny all

# MANAJEMEN BANDWIDTH
# ___________________________________________
delay_pools 2
delay_class 1 2
delay_parameters 1 -1/-1 -1/-1
delay_class 2 2
delay_parameters 2 -1/2048000 10000/2049000

delay_access 2 allow download


delay_access 2 deny all
delay_access 1 deny download
delay_access 1 allow all

Quote 00
ika |222.124.193.Xxx |2009-09-04 12:33:16

mohon bantuannya y mas, bener2 dah buntu ne...


fqdncache_size 1024
cache_replacement_policy heap GDSF
memory_replacement_policy heap GDSF

visible_hostname localhost
cache_mgr admin@localhost
cache_effective_user squid
cache_effective_group squid

acl apache rep_header Server ^Apache


broken_vary_encoding allow apache
cache_mgr admin@proxy.sman5.com #nama admin squid
cache_effective_user squid
cache_effective_group squid
visible_hostname proxy.sman5.com #hostname unutk squid

# DEFAULT ACL
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 lan src 192.168.2.0/24
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563
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 280 # http-mgmt
acl safe_ports port 488 # gss-http

www.almuhibbin.com
Kumpulan FAQ Proxy transparent

acl safe_ports port 591 # filemaker


acl safe_ports port 777 # multiling http

# MEMBLOCK SITUS TERLARANG (BLACKLIST) SECARA MANUAL


# _______________________________________________
acl porn url_regex "/etc/squid/acl/porn.txt"
acl noporn url_regex "/etc/squid/acl/noporn.txt"
acl ip-porn dst "/etc/squid/acl/ip-porn.txt"
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

http_access allow porn all


http_access allow noporn all
http_access deny porn all
http_access deny ip-porn all
http_access allow localhost

http_access allow all


http_access allow lan

acl PURGE method PURGE


acl CONNECT method CONNECT

http_access allow manager localhost


http_access deny manager

http_access allow PURGE localhost


http_access deny PURGE

http_access deny !safe_ports


http_access deny CONNECT !SSL_ports
http_access deny to_localhost
acl our_networks src 192.168.2.0/24 192.168.3.0/24
http_access allow our_networks

http_reply_access allow lan


http_reply_access allow localhost
http_reply_access deny all
http_reply_access allow all

icp_access allow lan


icp_access allow localhost
icp_access deny all
icp_access allow all

http_access allow localhost


http_reply_access allow all
http_access deny all

# MANAJEMEN BANDWIDTH
# ___________________________________________
delay_pools 2
delay_class 1 2
delay_parameters 1 -1/-1 -1/-1
delay_class 2 2
delay_parameters 2 -1/2048000 10000/2049000

delay_access 2 allow download


delay_access 2 deny all
delay_access 1 deny download
delay_access 1 allow all

www.almuhibbin.com
Kumpulan FAQ Proxy transparent

www.almuhibbin.com

You might also like