Showing posts with label PROXY SERVER. Show all posts
Showing posts with label PROXY SERVER. Show all posts

Saturday, September 16, 2017

Squid.conf dan Storeid.pl untuk Youtube Proxy Cache Squid 3.x


force caching youtube html5 range dengan metode modifikasi base.js (tanpa menggunakan content adaptation / E-Cap)
feature :
100% HIT range
range yang kecil-kecil, jadi menghemat sedotan bandwidhinject ID statis, jadi tidak perlu define CPN di storeidreal lock resolution (hanya tersisa 1 resolusi yang ditentukan)360 rasa 144

Wednesday, February 8, 2017

Tutorial Setting Mikrotik dan Proxy Server Squid di Virtual Box

Sebelum kita bahas ke tutorial instalasi, sebelumnya saya asumsikan bahwa anda sudah bisa install dan konfigurasi mikrotik di virtual box, atau pun install ubuntu server di virtual box, supaya memudahkan kita dalam persiapan implementasi, bisa anda baca lagi di artikel bahasan sebelumnya mengenai Cara Install dan Konfigurasi Mikrotik di Virtual Box , untuk peralatan-peralatann yang harus kita siapkan adalah sebagai berikut dibawah :

Wednesday, January 29, 2014

Terjemahan TAG: acl di squid.conf

This summary is not available. Please click here to view the post.

Saturday, December 7, 2013

Bypass Proxy HIT


Mikrotik OS 5.7 dan Squid 2.7 Stable9+Patch > disini maksudnya adalah apabila ada objek yang HIT dari cache proxy maka tidak terlimit oleh manajemen limit bandwidth yang kita buat baik di simple queue/queue tree. karena klo tetap terlimit ya percuma dong ente bikin squid proxy.
sebenernya ada beberapa cara, tapi berikut yang ane gunakan dan terbukti efektif :

Pertama, pastikan ada baris perintah ini di squid.conf anda :

Code:
zph_mode tos
zph_local 48
zph_sibling 0
zph_parent 0
zph_option 136
Lalu buat Mangle baru di mikrotik anda, pastikan mangle ini posisinya diatas Mangle untuk manajemen bandwidth anda :

Code:
/ip firewall mangle add chain=postrouting dscp=12 action=mark-packet new-packet-mark=Proxy-DSCP passthrough=no
edit :
gunakan opsi mangle ini jika yang diatas tidak jalan (pilih salah satu saja)
Code:
/ip firewall mangle add chain=forward dscp=12 action=mark-packet new-packet-mark=Proxy-DSCP passthrough=no
Lalu buat rule queues, contoh disini adalah menggunakan queue tree :

Code:
/queue tree add name="Proxy HIT" parent=global-out packet-mark=Proxy-DSCP \
limit-at=0 queue=default priority=1 max-limit=0 burst-limit=0 burst-threshold=0 burst-time=0s
untuk simple queue silahkan sesuaikan saja, yang penting adalah penggunaan packet mark=Proxy-DSCP

Permasalahan akan muncul klo ada Dynamic Queue di simple queue seperti penggunaan login hotspot gateway mikrotik.
berikut penyelesaiannya ada di index Page 1 yaitu : Prioritas Proxy Hit diatas Dynamic Queue


Bagi pengguna hotspot mikrotik yang selama ini di puyengkan dengan munculnya queue dynamic di simple queue yang juga melimit proxy hit sehingga proxy hit jadi tidak maksimal untuk user hotspot. Dimana dynamic queue ini selalu muncul pada urutan queue paling atas sehingga akan di eksekusi pertama. semoga script dibawah ini bisa membantu rekan2 sekalian :

prinsip :
script ini bekerja dengan memonitor prioritas pada queue, sehingga berikan prioritas queue 1 pada proxy hit.

paste script berikut pada user profiles pada bagian on-login di IP>HOTSPOT>USER PROFILES
on login script :

Code:
:foreach n in=[/queue simple find priority=1] do={ /queue simple move $n [:pick [/queue simple find] 0] }
Trik untuk yang menggunkan user manager :
  1. buat user profiles sesuai dengan limitation pada user manager (IP>hotspot>user profiles)
  2. Masukkan nama user profiles yang di buat tadi ke group name yang ada di limitation user manager bagian constraints
  3. Buat profile user manager dengan limitation yang udah diberi grup barusan,
harusnya setiap ada user dari usermanager maupun user hotspot login otomatis dynamic queue-nya akan tergeser menjadi dibawah queue hit proxy.

Mohon bagi yang sudah master dalam hal queue dan per-mikrotikan dibenarkan kalau ada yang salah, sukur2 jika mau menyempurnakan .

sumber awal adalah dari mikrotik wiki untuk routerOS 2.9
http://wiki.mikrotik.com/wiki/Extern...Object_ROS_2.9

Saturday, November 30, 2013

2.7 stable 9 vs TProxy on Ubnt

Quote:idealnya proxy itu emang harus transparent. namun untuk squid2.7stable9 belum bener2 transparent.
lah maksudnya transparent gimana?
gini lho.. ketika client di bawah proxy request http yang masuk ke proxy kan ip client. trus yang keluar malah ip proxy. emang namanya transparent. cuman blom transparent menurut ane. kalo kita bikin proxy model gini dan mau limit traffic ya susah.. karena yang keluar dari proxy adalah ip proxy. bukan ip client.

lah trus setelah pake TProxy hasilnya gimana?
diharapkan setelah pake TProxy ip yang keluar dari proxy bener2 pure ip client. bukan proxy. jadi lebih mudah untuk management bandwidth.

udah ngerti kan? (mudah2an blom)

POC
tweak dulo systemnya supaya traffic bisa lebih optimal



Code:
echo "*             soft    nofile          65535" >> /etc/security/limits.conf
echo "*             hard    nofile          65535" >> /etc/security/limits.conf
echo "net.ipv4.conf.all.rp_filter=0" >> /etc/sysctl.conf
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf

untuk builder dan compiler gw gak usah jelasin disini. gw yakin semua udah pada paham. next,

download squid dan patch TProxy nya


Code:
wget http://www.squid-cache.org/Versions/v2/2.7/squid-2.7.STABLE9.tar.gz
wget http://www.visolve.com/squid/tproxy4/squid-2.7s9-tproxy-4.patch

extract dan patch squid 


Code:
tar -zxvf squid-2.7.STABLE9.tar.gz
cd squid-2.7.STABLE9
patch -p1 < ../squid-2.7s9-tproxy-4.patch

compile seperti biasa
dan perhatikan yang di bold

Quote:./configure '--prefix=/usr/local/squid' \
'--enable-async-io=24' \
'--enable-storeio=ufs,aufs,null,diskd' \
'--enable-auth=basic' \
'--enable-err-languages=English' \
'--disable-ident-lookups' \
'--disable-cache-digests' \
'--enable-follow-x-forwarded-for' \
'--enable-delay-pools' \
'--enable-http-violations' \
'--enable-arp-acl' \
'--with-maxfd=65535' \
'--enable-linux-netfilter' \
'--enable-linux-tproxy' \
'--with-libcap'
make
make install

di squid.conf nya tambahin seperti ini


Code:
http_port 8080 tansparent tproxy
max_filedescriptors 65535

lanjut, setting iproute2 & iptables untuk intercepting tproxy (transparent proxy)


Code:
ip rule add fwmark 1 lookup 100
ip route add local 0.0.0.0/0 dev lo table 100

iptables -t mangle -N DIVERT
iptables -t mangle -A DIVERT -j MARK --set-mark 1
iptables -t mangle -A DIVERT -j ACCEPT
iptables -t mangle -A PREROUTING -p tcp -m socket -j DIVERT
iptables -t mangle -A PREROUTING -p tcp --dport 80 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 8080

2.7 Stable 9 vs Ubnt 12.4

sudo apt-get update
sudo apt-get install gcc
sudo apt-get install ccze
sudo apt-get install iptraf
sudo apt-get install build-essential
sudo apt-get install sharutils
sudo apt-get install libzip-dev
sudo apt-get install automake1.9


wget https://dl.dropbox.com/s/7tkdooexrrbr596/squid-2.7.STABLE9.tar.gz
tar -zxvf squid-2.7.STABLE9.tar.gz

cd squid-2.7.STABLE9

kemudian compile, contoh menggunakan proc intel pentium4

CHOST="i686-pc-linux-gnu" CFLAGS="-march=pentium4 -O2 -pipe -fomit-frame-pointer"
./configure --prefix=/usr --exec_prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin
 --datadir=/etc/squid --libexecdir=/usr/libexec --sysconfdir=/etc/squid 
--localstatedir=/var/spool/squid --enable-async-io --with-pthreads 
--enable-storeio=aufs,coss,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-referer-log 
--enable-useragent-log --enable-follow-x-forwarded-for --with-large-files
--enable-large-cache-files --enable-truncate --disable-ident-lookups 
--with-maxfd=65536

hapus file squid.conf dan penambahan file storeurl.pl
rm /etc/squid/squid.conf
cd /etc/squid
wget https://dl.dropbox.com/s/s9k2ssw3osp367j/squid.conf

wget https://dl.dropbox.com/s/ws5nd3lnnlr9j3w/storeurl.pl
catatan : sesuaikan direktori cache_dir dan ip local yg berada di squid.conf sesuai dengan kebutuhan anda

buat direktori & file log
mkdir /var/log/squid
touch /var/log/squid/access.log
touch /var/log/squid/store.log
touch /var/log/squid/cache.log


berikan hak akses pada dir cache, file log & storeurl.pl
chown proxy:proxy /cache
chown proxy:proxy /etc/squid/storeurl.pl
chown proxy:proxy /var/log/squid/access.log
chown proxy:proxy /var/log/squid/store.log
chown proxy:proxy /var/log/squid/cache.log
chmod +x /cache
chmod +x /etc/squid/storeurl.pl
chmod +x /var/log/squid/access.log
chmod +x /var/log/squid/store.log
chmod +x /var/log/squid/cache.log


agar squid bisa menggunakan perintah service (start|restart|stop)
cd /etc/init.d
wget https://dl.dropbox.com/s/f8z2c68keniu3ii/squid

chown proxy:proxy /etc/init.d/squid
chmod +x /etc/init.d/squid

pengalihan port 80 ke port default squid 3128
nano /etc/rc.local
tambahkan baris di bawah sebelum baris exit 0 yg berada di baris paling bawah
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128
catatan : jika squid tidak auto start up, bisa menambahkan baris
"squid start" di bawah-nya tanpa kutip

cek konfigurasi pada squid.conf
squid -k parse
jika tidak ada pemberitahuan lanjutkan membuat dir swap cache
squid -z
jika tidak ada pemberitahuan cek + jalankan squid
squid -d1

perintah-perintah pada squid
squid -k shutdown atau service squid stop    "stop squid"
squid -d1 atau service squid start            "start squid"
tail -f /var/log/squid/access.log|ccze        "cek log akses"
tail -f /var/log/squid/cache.log|ccze        "cek log cache"
tail -f /var/log/squid/store.log|ccze        "cek log store"
tail -f /var/log/squid/access.log|grep HIT  "cek HIT log saja"