How to Setup TPROXY Squid on Debian Etch

Judul yang panjang dan bisa jadi sudah melelahkan untuk dibaca, hanya saja judul di atas merupakan judul yang tepat untuk menggambarkan bagaimana menset-up sebuah Squid Proxy server untuk berjalan di mode bridge dimana semua lalu lintas traffic dari client akan terlihat source IP masing-masing klien. Jadi saat log squid dijalankan akan terlihat satu demi satu IP client yang sedang dan telah request untuk mengakses internet atau tepatnya HTTP request. Jadi selain menghemat bandwidth secara keseluruhan juga kita bisa mengatur bandwidth masing-masing klien berdasarkan IP klien.

Jika menggunakan metode transparent squid proxy biasa, kita hanya mendapatkan keuntungan dalam menghemat bandwidth sedangkan untuk pengaturan bandwidth ke masing-masing klien tidak bisa kita lakukan karena semua telah di NAT oleh squid proxy server sehingga IP yang muncul di gateway adalah IP squid proxy server.

Dalam prakteknya, TPROXY Squid server langsung bisa dikombinasikan dengan servis lain seperti menjadi gateway ke speedy dengan memanfaatkan fasilitas pppoe atau hanya menjadi klien dari modem ADSL. Semua tergantung dengan kondisi di lapangan, hanya saja lebih bagusnya jika modem ADSL Speedy yang menjadi bridge dan dial dilakukan oleh server. Lalu nanti setelah semua berjalan dengan baik, TPROXY Squid server bisa ditambahkan dengan dansguardian untuk memfilter URL dan juga bisa melihat statistic Squid dengan calamaris atau SARG. Silahkan saja disesuaikan dengan kebutuhan. Namun dalam konteks saya, TPROXY akan disandingkan dengan mikrotik PC router. Jadi TPROXY hanya benar-benar menjadi SQUID proxy server dengan mode bridge.

Kalau digambarkan dengan tologi sederhana akan tampil sebagai berikut.

Internet — Modem ADSL (Bridge) — Mikrotik — Squid TProxy (Bridge) — Client

Dimana di mikrotik ada 2 LAN card yang satu mengarah ke Modem ADSL yang telah diset menjadi bridge, lalu 1 LAN card lagi mengarah ke Squid TProxy.
Sedangkan di Squid Tproxy juga menggunakan 2 LAN card yang nantinya akan di set menjadi bridge, 1 LAN card mengarah ke mikrotik server sedangkan 1 LAN card yang lain mengarah ke client.

Jadi kebutuhan Hardware untuk Tproxy Squid server minimal menggunakan 2 LAN card. Hanya saja saat saya menset-up TProxy server, Komputer yang saya gunakan adalah HP Pavilion w1184d dengan spesifikasi sebagai berikut;
- Pentium 4 3.0 Ghz
- HDD Sata 80Gb
- DDR1 RAM 256Mb (upgrade menjadi DDR1 RAM 1Gb)
- 2 LAN card (1 onboard realtek + 1 LAN card 3Com)
Sedangkan spesifikasi yang lain masih mengunakan aslinya. Dan tentu saja OS yang digunakan untuk menset-up Tproxy server adalah Linux.

TPROXY Squid server akan dibangun dengan mgnggunakan CD Netinstall Linux Debian etch. Jika ingin mendapatkan CD Netinstall silahkan merujuk ke juragan ISO di sini atau yang pakai akses speedy bisa langsung ke dl2 untuk download.

Oke lah langsung saja disudahi basa-basinya, Segera kita rubah dekstop PC HP Pavilion menjadi Squid Tproxy Server. Ingat, karena ini akan dijadikan mode bridge maka minimal LAN card yang tersedia di Tproxy server adalah 2 buah.

Kegiatan ngoprek ini akan terbagi menjadi 3 bagian besar yaitu;
1. Setting bridge
2. Compile kernel untuk support Tproxy
3. Patch iptabes dan squid untuk support Tproxy
Kenapa patch harus dilakukan?, karena bawaan dasar iptables dan squid dari debian tidak dienable support tproxynya.

Sudah disiapkan CD netinstall Debian Etch-nya?, kalau sudah segera saja install Debian etch dan pastikan hanya standar system saja yang diinstall sedangkan yang lain bisa ditambahkan belakangan. Jangan lupa arahkan reposiroty list ke mirror lokal baik di indika ataupun di kambing ataupun di dl2.
Lakukan update dan upgrade lalu install paket-paket dibawah.

tproxy#apt-get update
tproxy#apt-get upgrade
tproxy#apt-get install iproute kernel-package libncurses5-dev fakeroot wget bzip2 build-essential
debhelper linuxdoc-tools libselinux1-dev bridge-utils ebtables libssl-dev

Sekarang kita bikin bridgenya, sekedar mengingatkan topologi yang saya gunakan seperti diatas.

tproxy# brctl addbr br0
tproxy# ifconfig eth0 0.0.0.0 promisc up
tproxy# ifconfig eth1 0.0.0.0 promisc up
tproxy# brctl addif br0 eth0
tproxy# brctl addif br0 eth1
tproxy# ip link set br0 up
tproxy# ip addr add 192.168.1.254/24 brd + dev br0
tproxy# route add default gw 192.168.1.1 dev br0

Bagusnya dijadikan script saja semua command diatas sehingga tak perlu lagi di set satu demi satu saat server reboot seperti dibawah ini.

tproxy#nano /etc/init.d/bridge.sh

Isi dari script diatas adalah dibawah ini

#!/bin/sh
# bridge Simple script to activate bridge with 2 LAN card
# Make bridge interface
brctl addbr br0

#Set eth0 and eth1 to promiscuous mode to listen and receive all frame
ifconfig eth0 0.0.0.0 promisc up
ifconfig eth1 0.0.0.0 promisc up

#Activate eth0 and eth1 in br0
brctl addif br0 eth0
brctl addif br0 eth1
ip link set br0 up

# Assign IP to br0 to easy remote to server
ip addr add 192.168.1.254/24 brd + dev br0

# Add route to br0
route add default gw 192.168.1.1 dev br0

Setelah disave lalu jadikan script file diatas menjadi file executable dan juga membuat srcipt agar diload tiap booting.

tproxy#chmod +x /etc/init.d/bridge.sh
tproxy#cd /etc/init.d
tproxy#update-rc.d bridge.sh start 75 2 3 4 5 .

Lalu pastikan di /etc/network/interfaces untuk interface eth0 dirubah nama interfacenya menjadi br0

Selesai sudah fase pertama untuk membuat bridge dengan 2 LAN card. Bridge ini hanya akan melewatkan semua paket yang masuk ke server dan meneruskannya melalui interface yang lain.

Oke kita akan mulai fase yang berat dan melelahkan. Pastikan stamina cukup fit dan tentunya ditemani dengan cemilan yang sehat. Pastikan rokok tidak menjadi teman ngoprek karena lebih baik ditemani segelas kopi semarang dan jajanan pasar :)

Silakan download source kernel terbaru di situs yang terdekat dengan kita, saya ambil versi 2.6.18.8 yang stable.

tproxy#cd /usr/src
tproxy:/usr/src#wget http://kambing.ui.edu/kernel-linux/v2.6/linux-2.6.18.6.tar.bz2
Jika selesai download silakan lakukan dibawah
tproxy:/usr/src# tar jxvf linux-2.6.18.6.tar.bz2
tproxy:/usr/src# ln -s linux-2.6.16 linux

selanjutnya kita extract ctproxy nya

tproxy:/usr/src# tar xzpf cttproxy-2.6.18-2.0.6.tar.gz
tproxy#cd /usr/src/linux
tproxy:/usr/src/linux# for i in /usr/src/cttproxy-2.6.18-2.0.6/patch_tree/0{1,2,3}*.patch; do cat $i |
patch -p1; done

nanti tampilannya akan seperti dibawah sebagai tanda sukses patching.

patching file include/linux/netfilter_ipv4/ip_conntrack.h
patching file include/linux/netfilter_ipv4/ip_nat.h
patching file net/ipv4/netfilter/Kconfig
patching file net/ipv4/netfilter/ip_conntrack_core.c
patching file net/ipv4/netfilter/ip_conntrack_standalone.c
patching file net/ipv4/netfilter/ip_nat_core.c
patching file net/ipv4/netfilter/ip_nat_proto_gre.c
patching file net/ipv4/netfilter/ip_nat_proto_icmp.c
patching file net/ipv4/netfilter/ip_nat_proto_tcp.c
patching file net/ipv4/netfilter/ip_nat_proto_udp.c
patching file include/linux/in.h
patching file include/linux/net.h
patching file include/linux/netfilter/nf_conntrack_common.h
patching file include/linux/netfilter_ipv4/ip_conntrack.h
patching file include/linux/netfilter_ipv4/ip_nat.h
patching file include/linux/netfilter_ipv4/ip_nat_core.h
patching file include/linux/netfilter_ipv4/ip_tproxy.h
patching file include/linux/netfilter_ipv4/ipt_TPROXY.h
patching file include/net/ip.h
patching file net/ipv4/inet_hashtables.c
patching file net/ipv4/inet_timewait_sock.c
patching file net/ipv4/ip_sockglue.c
patching file net/ipv4/netfilter/Kconfig
patching file net/ipv4/netfilter/Makefile
patching file net/ipv4/netfilter/ip_conntrack_core.c
patching file net/ipv4/netfilter/ip_conntrack_standalone.c
patching file net/ipv4/netfilter/ip_nat_core.c
patching file net/ipv4/netfilter/ip_nat_standalone.c
Hunk #1 succeeded at 300 (offset 2 lines).
patching file net/ipv4/netfilter/ipt_TPROXY.c
patching file net/ipv4/netfilter/ipt_tproxy.c
patching file net/ipv4/netfilter/iptable_tproxy.c
patching file net/ipv4/tcp_ipv4.c
patching file net/ipv4/tcp_minisocks.c
patching file net/ipv4/udp.c
Hunk #2 succeeded at 1605 (offset 9 lines).
patching file include/linux/netfilter/nf_conntrack_common.h
patching file include/linux/netfilter_ipv4/ip_conntrack.h
patching file net/ipv4/netfilter/ip_conntrack_core.c
patching file net/ipv4/netfilter/ip_conntrack_proto_tcp.c
patching file net/ipv4/netfilter/ip_conntrack_standalone.c
patching file net/ipv4/netfilter/ip_nat_core.c
patching file net/ipv4/netfilter/iptable_tproxy.c

tproxy:/usr/src/linux# make clean && make mrproper
tproxy# cp /boot/config-`uname -r` ./.config
oke dilanjut dengan make menuconfig, semua file2 pada Netfiler saya kasih tanda * semua serta pada
Mode Bridge nya.

Posisi di menuconfig
-> Networking
—> Networking support
—–> Networking options
——-> Network packet filtering
———-> IP: Netfilter Configuration

tproxy#make menuconfig
tproxy#make-kpkg clean
tproxy#fakeroot make-kpkg -initrd -append-to-version=-tproxy kernel_image kernel_headers

silahkan ditinggal saja karena ini akan makan waktu lama, saya sendiri butuh 1 jam lebih untuk menyelesaikan fase compile kernel. Silahkan maen game dulu atau nambah stok untuk kopi karena masih ada fase lainnya.

Jika sudah selesai segera ke direktori /usr/src

tproxy#cd /usr/src

Pastikan file dibawah ini ada di direktori /usr/src

tproxy:/usr/src# ls

linux-headers-2.6.16-tproxy_2.6.16-tproxy-10.00.Custom_i386.deb
linux-image-2.6.16-tproxy_2.6.16-tproxy-10.00.Custom_i386.deb

Lalu install saja ke-2 paket diatas.

tproxy:/usr/src# dpkg -i linux-headers-2.6.16-tproxy_2.6.16-tproxy-10.00.Custom_i386.deb
tproxy:/usr/src# dkg -i linux-image-2.6.16-tproxy_2.6.16-tproxy-10.00.Custom_i386.deb

done..finish..lalu reboot untuk menggunakan kernel baru yang sudah support Tproxy dan untuk memastikan hasil configure kernel yang barusan direboot itu berhasil atau tidak, silakan lihat file ipt_TPROXY.ko dan ipt_tproxy.ko harus ada di directory dibawah

tproxy# reboot
tproxy:/usr/src/linux/net/ipv4/netfilter# ls -l | grep ipt_tproxy
-rw-r–r– 1 root root 1628 2008-12-20 01:35 ipt_tproxy.c
-rw-r–r– 1 root root 3162 2008-12-20 04:44 ipt_tproxy.ko
-rw-r–r– 1 root root 665 2008-12-20 04:25 ipt_tproxy.mod.c
-rw-r–r– 1 root root 2040 2008-12-20 04:44 ipt_tproxy.mod.o
-rw-r–r– 1 root root 1760 2008-12-20 04:12 ipt_tproxy.o
tproxy:/usr/src/linux/net/ipv4/netfilter# ls -l | grep ipt_TPROXY
-rw-r–r– 1 root root 2211 2008-12-20 01:35 ipt_TPROXY.c
-rw-r–r– 1 root root 3627 2008-12-20 04:43 ipt_TPROXY.ko
-rw-r–r– 1 root root 694 2008-12-20 04:25 ipt_TPROXY.mod.c
-rw-r–r– 1 root root 2104 2008-12-20 04:43 ipt_TPROXY.mod.o
-rw-r–r– 1 root root 2144 2008-12-20 04:12 ipt_TPROXY.o

Well done…sudah terlihat disana file-2 pendukung Tproxy. Ini artinya sudah oke. Sekarang dilanjutkan dengan mengkonfigurasi iptables agar support cttproxy, sekarang download tarball nya iptables lalu extract

tproxy#cd /usr/src
tproxy#apt-get source iptables
tproxy:/usr/src# cd iptables-1.3.6.0debian1/iptables

Kita Pacth sekarang IPTables untuk support tproxy

tproxy:# cat /usr/src/cttproxy-2.6.18-2.0.6/iptables/iptables-1.3-cttproxy.diff | patch -p1
tproxy# chmod +x extensions/.tproxy-test
tproxy#cd extensions/
tproxy# nano Makefile

lalu pada line ke-8 isi paling ujung nya dengan tproxy dan TPROXY

tproxy:~# cd /usr/src/iptables-1.3.6.0debian1/
tproxy:/usr/src/iptables-1.3.6.0debian1# make KERNELDIR=/usr/src/linux

Lalu lanjutkan ambil source tarball dari websitenya netfilter karena default IPtables dari debian selalu akan ditemukan error saat konfigurasi

tproxy#wget ftp://ftp.netfilter.org/pub/iptables/iptables-1.3.6.tar.bz2
tproxy#cd iptables-1.3.6
tproxy#cat /usr/src/cttproxy-2.6.18-2.0.6/iptables/iptables-1.3-cttproxy.diff | patch -p1
tproxy#chmod +x extensions/.tproxy-test
tproxy#cd extensions

Tambahkan lagi TPROXY dan tproxy pada file Makefile seperti diatas. Setelah itu save

tproxy# cd /usr/src/iptables-1.3.6
tproxy# make KERNELDIR=/usr/src/linux
tproxy# make install

Jika udah selesai configure dan instalasi Iptables diatas dilanjutkan dengan pembuatan file *.deb tapi kita harus mengcopy dulu file libipt_Tproxy ke directory source nya si Tproxy bawaan Debian

tproxy#cd /usr/src/iptables-1.3.6/extensions/
tproxy#cp libipt_TPROXY* /usr/src/iptables-1.3.6.0debian1/iptables/extensions/
tproxy#cp libipt_tproxy* /usr/src/iptables-1.3.6.0debian1/iptables/extensions/

tproxy# cd /usr/src/iptables-1.3.6.0debian1/
tproxy# dpkg-buildpackage -b -rfakeroot

done.. finish dan silahkan install file deb berikut.

tproxy#dpkg -i iptables_1.3.6.0debian1-5_i386.deb iptables-dev_1.3.6.0debian1-5_i386.deb

Jika file diatas sudah diinstall, coba cek iptablesnya jika pada –on-port 3128 dan -–dport tidak
ada error berarti IPTables nya dah jalan

tproxy#iptables -t tproxy -A PREROUTING -i eth0 -p tcp –dport 80 -j TPROXY –on-port 3128

coba dicheck

tproxy#iptables -L -t tproxy
/squid-2.6.STABLE14# iptables -L -t tproxy
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
TPROXY tcp — anywhere anywhere tcp dpt:www TPROXY redirect 0.0.0.0:3128
TPROXY tcp — anywhere anywhere tcp dpt:www TPROXY redirect 0.0.0.0:3128
Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Oke..IP tables sudah jalan dan sekarang kita lanjutkan dengan instalasi squid. Squid yang saya gunakan versi 2.6 STABLE14

tproxy#wget ftp://squid.cbn.net.id/pub/squid/squid-2/STABLE/squid-2.6.STABLE14.tar.bz2
tproxy#tar jxvf squid-2.6.STABLE14.tar.bz2
tproxy#cd squid-2.6.STABLE14

Sebelum melakukan istalasi Squid ada baiknya kita patch dulu squid karena kalau tidak maka error akan selalu setia menemani.

tproxy#cp /usr/src/linux/include/linux/netfilter_ipv4/ip_tproxy.h /usr/include/linux/netfilter_ipv4
tproxy#cp /usr/include/linux/capability.h /usr/include/sys

Saya menggunakan standar konfigurasi squid dari debian hanya saja dengan menambahkan support untuk meng-enable tproxy.

tproxy#./configure ./configure –prefix=/usr –exec_prefix=/usr –bindir=/usr/sbin –sbindir=/usr/sbin –libexecdir=/usr/lib/squid –sysconfdir=/etc/squid –localstatedir=/var/spool/squid –datadir=/usr/share/squid –enable-async-io –with-pthreads –enable-storeio=ufs,aufs,coss,diskd,null –enable-linux-netfilter –enable-arp-acl –enable-epoll –enable-removal-policies=lru,heap –enable-snmp –enable-delay-pools –enable-htcp –enable-cache-digests –enable-underscores –enable-referer-log –enable-useragent-log –enable-auth=basic,digest,ntlm –enable-carp –with-large-files i386-debian-linux build_alias=i386-debian-linux host_alias=i386-debian-linux target_alias=i386-debian-linux –enable-linux-tproxy

tproxy# make && make install

Jika tidak ada error yang terjadi maka squid sudah sukses diinstall, sekarang tinggal utak-atik konfigurasi squid.conf untuk mendapatkan hasil yang optimal.

Oh ya jangan lupa untuk memasukkan script iptables dan ebtables ke /etc/rc.local biar saat reboot maka tproxy squid server ready to server.

tproxy# nano /etc/rc.local

iptables -t tproxy -A PREROUTING -i br0 -p tcp –dport 80 -j TPROXY –on-port 3128
iptables -t tproxy -A PREROUTING -i eth0 -p tcp –dport 8080 -j TPROXY –on-port 3128
iptables -t tproxy -A PREROUTING -i eth1 -p tcp –dport 3128 -j TPROXY –on-port 3128
ebtables -t broute -A BROUTING -p IPv4 –ip-protocol 6 –ip-destination-port 80 -j redirect –
redirect-target ACCEPT

echo 0 > /proc/sys/net/ipv4/conf/lo/rp_filter
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_nonlocal_bind

done…tproxy sudah selesai dan siap dijalankan.

Berikut contoh file squid.conf yang saya gunakan.

http_port 3128 tproxy transparent
tcp_outgoing_address 192.168.1.10
icp_port 3130

udp_incoming_address 0.0.0.0
udp_outgoing_address 255.255.255.255

hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY

cache_mem 256 MB
cache_swap_low 80
cache_swap_high 85
maximum_object_size 64 MB
ipcache_size 8192
ipcache_low 85
ipcache_high 95
fqdncache_size 8192
store_dir_select_algorithm round-robin
cache_replacement_policy heap LFUDA
memory_replacement_policy heap GDSF

cache_dir diskd /cache01 7500 16 256
cache_dir diskd /cache02 7500 16 256

cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log /dev/null
emulate_httpd_log on
pid_filename /var/run/squid.pid
#mime_table /etc/squid/mime.conf
log_fqdn off
log_ip_on_direct off

client_netmask 255.255.255.255
ftp_user anonymous@
ftp_list_width 32
ftp_passive on
ftp_sanitycheck on

#refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
quick_abort_min 0 KB
quick_abort_max 0 KB
quick_abort_pct 98
negative_ttl 1 minutes
half_closed_clients off
read_timeout 5 minutes
request_timeout 1 minutes
client_lifetime 360 minutes
shutdown_lifetime 2 seconds

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.1.0/255.255.255.0
acl rtrw src 192.168.2.0/255.255.255.0
acl to_localhost dst 127.0.0.0/8
acl PURGE method PURGE
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 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
#acl http_get method GET

http_access allow manager lan
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow PURGE localhost
http_access deny PURGE
http_access allow localhost
http_access allow lan
http_access allow rtrw
http_access deny all
http_reply_access allow all

icp_access allow lan
icp_access deny all
icp_access allow rtrw
miss_access allow all
cache_mgr proxy@janus.com
cache_effective_user proxy
cache_effective_group proxy
visible_hostname proxy.janus.com
unique_hostname proxy.simplyeko.com
#httpd_accel_host virtual
#httpd_accel_port 80
#httpd_accel_with_proxy on
#httpd_accel_uses_host_header on

logfile_rotate 10
forwarded_for off
log_icp_queries on
buffered_logs on
client_db off
strip_query_terms off
#icon_directory /usr/share/squid/icons
#error_directory /usr/share/squid/errors/German
snmp_port 3401
snmp_access allow localhost
snmp_access allow lan
snmp_access deny all
snmp_incoming_address 0.0.0.0
snmp_outgoing_address 255.255.255.255
wccp_router 0.0.0.0
offline_mode off
coredump_dir /var/spool/squid
ie_refresh on


46 Responses to “How to Setup TPROXY Squid on Debian Etch”

  1. jah panjang amat :) pantesan sampai jatuh bangun membuatnya hehehehe

    gebleks last blog post..Selamat Datang 2009

  2. MUMET !

    PETIR ANGKASAs last blog post..JUAL OTAK !

  3. yah…logonya blom dipasang…iks:(

    Kang Ifins last blog post..Pilih Caleg? Jangan Sampai Salah Coblos..los..los.looss

  4. Panjang sekali, ntar kalau perlu langsung nanya aja lha ya..

    Rajin-rajin berlatih aja wkwkwkwkwk..

    Rajawali kecils last blog post..Jurus Terakhir

  5. TPROXY Squid server akan dibangun dengan mgnggunakan CD Netinstall Linux Debian etch. Jika ingin mendapatkan CD Netinstall silahkan merujuk ke juragan ISO di sini atau yang pakai akses speedy bisa langsung ke dl2 untuk download.

    Yang paling mudah untuk mendapatkan CD ini ya ke Marcelia :)

  6. wih mumet kalu dilihat aja
    harus dicoba dan dipraktekkan
    iso gak ya
    berdoa dulu ah

  7. wah jadi dengan teknologi ini, lebih terdefinisi siapa (IP) mana yang akses, tapi dengan peralatan yang lebih banyak lagi ya .hehehe

    cengeks last blog post..Lampu Kota di Simpang Seraya

  8. hahahahaha…. mumet aku bacanya.

  9. Mikrotik Router OS sebagai bandwidth shaper,
    request ke internet dari Squid sudah tidak dapat lagi di shape, sehingga otomatis akan memakan resource bandwidth yang tersisa

  10. wewewewewe, akakaakakakakakak
    pusiiiiiiiiiiiiiiiiiiiiing 7 kelling
    tapi kalu udah lulus seneng tujung keliling

    giiilllllllllllaaaaa, dasyat amat
    sanggup kah aku

  11. halo mas nanya dunk :D itu berarti iptables ma squidnya diinstal dolo yah baru lanjutin ke langkah2 yg disini

  12. Eko Prasetyo on May 12th, 2009 at 6:22 am

    # hendra
    ga perlu install dulu..khan mo dicompile baru install

  13. waduh pantesan brow ada comand yg g jalan wakaakaka makasih yah atas bantuannya

  14. mas eko command yg tproxy#update-rc.d bridge.sh start 75 2 3 4 5 . kok g jalan :( ( gimana yah please dunk help me

  15. Eko Prasetyo on May 13th, 2009 at 6:11 am

    # hendra
    ada cara lain..masukkan saja script dibawah ini ke rc.local

    # bridge Simple script to activate bridge with 2 LAN card
    # Make bridge interface
    brctl addbr br0

    #Set eth0 and eth1 to promiscuous mode to listen and receive all frame
    ifconfig eth0 0.0.0.0 promisc up
    ifconfig eth1 0.0.0.0 promisc up

    #Activate eth0 and eth1 in br0
    brctl addif br0 eth0
    brctl addif br0 eth1
    ip link set br0 up

    # Assign IP to br0 to easy remote to server
    ip addr add 192.168.1.254/24 brd + dev br0

    # Add route to br0
    route add default gw 192.168.1.1 dev br0

  16. mo tanya mas, kalau di mikrotik nya ada dhcp

    dengan topologi seperti ini, client bisa dapat ip nya gak ya?

    kan ada squid ditengahnya..

    mohon pencerahan nya..

  17. @halley
    bisa kok, khan squidnya jadi bridge.

  18. Mas Hendra, makasih buat pencerahannya…
    Saya mau bertanya, saya mempunyai 1 buah mikrotik dengan 2 lan dan 1 buah proxy dengan 1 lan.
    Di mikrotik, kita bisa pantau ip mana aja yang bandwithnya besar dengan torch.
    Mungkinkah saya melakukannya terhadap proxy squid saya untuk memonitor ip mana saja yang memakan bandwith besar?
    karena semua ip yang bisa internet itu masuk ke squid semua dan di mikrotik hanya dikenali ip squid aja yang besar…
    Trims

  19. Sorri Mas Eko…hehehe..salah tulis namanya…jadi ketulis Hendra…sori2…soale uda pusing seting squid and baca2 ketemu web ini lagnsung tulis ….

  20. mas eko tanya, kalo compile kernel sama update iptables dulu boleh ga?habis itu baru buat bridge & konfigurasi squid?

  21. @ Teguh: ndak bisa, kecuali squidnya pake mode bridge
    @ anis; boleh saja, bridge ama squid.conf itu nanti-2 juga boleh

  22. PADA IPTABLES
    ================
    iptables -t tproxy -A PREROUTING -i eth0 -p tcp –dport 8080 -j TPROXY –on-port 3128
    iptables -t tproxy -A PREROUTING -i eth1 -p tcp –dport 3128 -j TPROXY –on-port 3128

    interface eth0 itu yg ke publik apa lokal?

    trus portnya ada -dport 8080, bukan 80, berarti port proxy ada 2 3128 & 8080

    mohon pencerahannya..trmksh

  23. @anis: iya, define ajah port utk proksinya, jika pake 1 pake 1,jika pake 2 ya spt diatas, jika lebih ya didefiniskan saja

  24. maaf mas eko, tanya lagi…
    ni saya juga sedang konfigurasi tproxy di debian 4.0 etch
    saya sudah ikuti semua langkah di tutorial mas eko
    tapi, mentok di iptablesnya
    awalnya berhasil, tapi terus lama2 ga konek, bridge juga ga ke detek, itu habis buat rule iptables
    udah 1 minggu 3 hari nih mas…!!hwuuhh..

    minta sedikit penjelasan rule iptables yg dipake di tutorial ini mas, terutama fungsinya, biar saya bisa menyesuaikan

    terimakasih sebelumnya, semoga amal ibadah mas eko diridhoi oleh Alloh SWT,amien

    klo ga keberatan saya minta email/YM nya mas, buat kontak2..hheuu

    salam,,anis thoha

  25. @anis: coba paste kemari iptables -L nya. maksudnya bisa terus ga bisa itu gimana ya?..apa ada tambahan lain setelah bisa?

  26. mas alhamdulillah uda jadi,,tapi yg pake debian ga stabil,bridge tiba2 down beberapa menit kemudian..
    akhirnya saya coba pake slackware 12.2 d compile ke kernel 2.6..28.3 + iptables 1.4.3 + squid 3.1, jadi juga, tapi iptablesnya pake table mangle.
    kapan2 saya posting konfigurasinya

    thx atas bantuannya mas eko

  27. @anis: seneng dengernya. bridge kok bisa suddenly down?, cek lognya..bisa jadi LAN card yg dipake ga match ama kernelnya. eniwe, seneng juga bisa berhasil di slackware, saya dah lama ga maenan slacky…

  28. kayaknya bukan debiannya mas, kayaknya saya yg update package yg ngawur makanya ga stabil,cz cm pny CD netinstall,pengennya yg DVD kn lgkp n ga repot

    saya cuma ikut tutorial ini http://makassar-slackers.org/node/198.
    enaknya ga perlu nge patch iptables & squid

    cuma, yg diminta dari boz, tu tproxy bridge, tiap ethernet bisa dimasuki semua jenis IP /subnet client
    jadi, ga ada perbedaan buat yg keluar ke internet dan yg masuk lewat client

    padahal, di konfigurasi kan ada 2 jenis ethernet, yg diset untuk keluar ke internet n yg satunya lagi buat client

    kembali ke prinsip bridging mas, kan seharusnya fungsinya meneruskan semua trafik kayak switch, ga terbatas pada IP/subnet tertentu

    permasahannya client/pelanggan ISP kan IP/subnet macem2, jadi tu tproxy bridge harus benar2 hanya sebagai jembatan yg cuma melewatkan siapapun dan bisa nge cache

    pusing ya mas, saya juga

    bingung main bridge sama ebtablesnya

    pendapatmu gmana mas, kalo kasusnya kyk gtw?

    yg pake slackware 12.2 patut di coba mas, seru!!

  29. nih tutorial asli dari sang master guru saya mas anton ada di blog saya http://anisthoha.wordpress.com/2009/07/27/tproxy-bridge-slackware-12-2/

    silahkan berkunjung..hheuu

  30. waduh setelah dicoba, ternyata banyak yang gak sesuai lagi.. versinya dah banyak berubah2.. T_T
    istirahat otak dolo deh.. dah mulai pusing2…

  31. Wah baru liat nih secara tproxy yang lama jebol :(

    mau test di satu server lagi

    Thanks

  32. TProxy sudah terinstall tetapi direktori /cache-01 – /cache-20 jadi tidak terdetek pada saat booting kenapa yah kira kira

    ada masukan ?

  33. mas, ipt_tproxy.ko masih gak keliatan, kira kira salah dimana yach ?

  34. sorry, solve

  35. @adisis: seneng dengernya kalo udah solve.

  36. kelebihan squid dengan tproxy sama tanpa tproxy apa pak?
    mohon pencerahannya

  37. tproxy itu utk mode bridging squid. kalo tanpa trpoxy, artinya squid biasa.

  38. mumet juga mas buat tproxy dh 3 hari gagal dicompile kernelnya :( (

  39. mumet iks buat tproxy……….argh…..

  40. tanda * sama M bedanya apa pak?
    kalo mo buat tanda * pada make menu config gimana ya?

  41. thenk kyu2 akhirnya bisa juga hehehe

  42. tcp_outgoing_address 192.168.1.10 <<== ini ip squid atau apa mas
    soal nya saya pasang tcp_outgoing nya ip squid output di contrack MT kebaca ip squid jadi send dari ip client bukan di teruskan ip client melainkan ip squid

  43. 192.168.1.10 is Proxy’s IP

  44. This is certainly a great weblog write-up, I’ve learnt a great deal.

  45. mulai paham ya. tp baru nyadar kalo ternyata ujung tombaknya itu adalah squid sendiri.

  46. [...] 2 atau 2,5 tahun lalu sudah berjalan normal dan panduan instalasinya digunakan sama salah satu Rt/Rw Net di Batam sana dan juga disalah satu Pusat Penelitian di Bandung [...]

Leave a Reply