Spec PC untuk Ubuntu Server
Hdd = 250 GB
Memory = 2 GB
Lan Card = 2 buah
Ikuti Langkah instal disini install-dan-setting-proxy-ubuntu-server sampai dengan langkah no 35, Pada local zone ( bukan time zone ) pilih united states karna jika kita pilih US squid3 akan diinstall. Kalau pilih Indonesia squid 2.7 yg akan diinstall. Lalu pada bagian mengisi ip address, ubah isi addressnya dengan 192.168.1.200. Netmask, gateway dan dns tetap sama.
Setelah itu login ke ubuntu server dengan putty
Isi ip address di putty 192.168.1.200 trus klik open
#login as proxyku
#password : proxyku
#sudo passwd
# enter new UNIX password isi dg proxyku (enter)
# retype new UNIX password isi proxyku (enter)
#su -
#passwd : proxyku ( password yang baru kita bikin untuk root tadi diatas )
Install Paket yg di butuhkan :
sudo apt-get update (enter)
sudo apt-get install squid (enter)
sudo apt-get install squid squidclient squid-cgi (enter)
sudo apt-get install gcc (enter)
sudo apt-get install build-essential (enter)
sudo apt-get install sharutils (enter)
sudo apt-get install ccze (enter)
sudo apt-get install libzip-dev (enter)
sudo apt-get install automake1.9 (enter)
sudo apt-get install multitail (enter)
sudo apt-get install acpid (enter) ( agar proses shutdown bisa dilakukan dgn menekan tombol power dipc )
sudo apt-get install libfile-readbackwards-perl
Kemudian kita remove squid3 karna kita akan menginstall lusca head 14942
apt-get purge squid3 &&
apt-get autoremove
Kemudian download deb-htproxy
Untuk Ubuntu 32 bit
http://arbinet-squid.googlecode.com/files/deb-htproxy_14942_i386.tar.bz2
Untuk Ubuntu 64 bit
http://arbinet-squid.googlecode.com/files/deb-htproxy_14942_x86-64.tar.bz2
Disini saya menggunakan Ubuntu 64 bit karna saya menggunakan processor AMD 64 bit
wget http://arbinet-squid.googlecode.com/files/deb-htproxy_14942_x86-64.tar.bz2 &&
tar xvf deb-htproxy_14942_x86-64.tar.bz2 &&
dpkg -i *.deb
#copy dan rename etc/squid jadi /etc/squid-lawas dan kemudian meremove /etc/squid :
cp -Rf /etc/squid /etc/squid-lawas &&
rm -rf /etc/squid && rm -f /usr/sbin/squid
#Kemudian kita download lusca head 14942 :
wget http://arbinet-squid.googlecode.com/files/LUSCA_HEAD-r14942.tar.gz &&
tar -xvzf LUSCA_HEAD-r14942.tar.gz &&
cd LUSCA_HEAD-r14942/
#download patch lusca dan langsung kita patch
wget http://arbinet-squid.googlecode.com/files/LUSCA_HEAD-patch.tar.gz &&
tar -xvzf LUSCA_HEAD-patch.tar.gz &&
patch -p0 < 3xx-loop.diff &&
patch -p0 < async-issue.diff &&
patch -p0 < http-gzip.diff &&
patch -p0 < ignore-must-revalidate.diff &&
patch -p0 < improve-nn-parser.diff &&
patch -p0 < lusca-vary.diff &&
patch -p0 < segmentation-fault.diff
Lalu kita compile luscanya : ( compile untuk amd64 )
./configure --build=x86_64-linux-gnu --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 --enable-epoll --enable-removal-policies=lru,heap --with-aio --with-dl --enable-snmp --enable-delay-pools --enable-htcp --enable-cache-digests --disable-unlinkd --enable-large-cache-files --with-large-files --with-pthreads --enable-storeio=aufs --enable-linux-netfilter --enable-arp-acl --enable-referer-log --enable-stacktraces --enable-truncate --enable-http-violations --enable-follow-x-forwarded-for --disable-linux-tproxy --disable-ssl --disable-select --disable-poll --disable-dependency-tracking --disable-auth --disable-ident-lookups --disable-wccp --disable-wccpv2 --enable-err-languages=English --enable-default-err-language=English --with-maxfd=65535
( compile untuk i386 )
./configure --build=i386-linux-gnu --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 --enable-epoll
--enable-removal-policies=lru,heap --with-aio --with-dl --enable-snmp
--enable-delay-pools --enable-htcp --enable-cache-digests
--disable-unlinkd --enable-large-cache-files --with-large-files
--with-pthreads --enable-storeio=aufs --enable-linux-netfilter
--enable-arp-acl --enable-referer-log --enable-stacktraces
--enable-truncate --enable-http-violations
--enable-follow-x-forwarded-for --disable-linux-tproxy --disable-ssl
--disable-select --disable-poll --disable-dependency-tracking
--disable-auth --disable-ident-lookups --disable-wccp --disable-wccpv2
--enable-err-languages=English --enable-default-err-language=English
--with-maxfd=65535
#kita install lusca
make &&
make install
#Stop squid
/etc/init.d/squid stop
Download file ini dengan mozilla http://arbinet-squid.googlecode.com/files/squid%20conf.rar
Lalu extract isinya dan jalankan winscp, login ke ubuntu isi ip address 192.168.1.200 dan isi username root dan password proxyku
copy file di folder "paste ke etc-squid" ke etc/squid yaitu squid.conf ,refresh.conf, squid.conf.pl dan storeurl.pl
Edit line2 berikut :
cache_dir aufs /cache 200000 191 256
Ket :
200000 adalah besar harddisk yang kita alokasikan untuk cache( sebaiknya 80% dari hdd total = 80% x 250 GB = 200 GB )
192 adalah L1 (numeric) yaitu jumlah directory yang akan di buat di dalam directory /cache ketika perintah #squid -f /etc/squid/squid.conf -z di eksekusi
cara mencarinya dengan rumus
((( x / y ) / 256 ) / 256 ) * 2 ≈ L1
x = besarnya disk cache yang akan di gunakan, satuannya adalah Kb (200 GB = 200.000.000 KB)
y = jumlah rata-rata object biasanya bernilai 32Kb
256 adalah L2 (numeric)yaitu jumlah directory yang akan di buat di dalam masing-masing directory L1 ketika perintah #squid -f /etc/squid/squid.conf -z di eksekusi
misalkan besarnya cache disk adalah 200 GB maka:
(((200.000.000/32)/256)/256)*2 ≈ 190.73486328125 lalu kita bulatkan keatas menjadi = 191
Setelah selesai jangan lupa save.
Kembali ke putty , jalankan perintah berikut :
sudo chmod +x /etc/init.d/squid
sudo chmod +x /etc/squid/storeurl.pl
chown proxy:proxy /cache
chmod 777 /cache
chown proxy:proxy /etc/squid/squid.conf
chmod 777 /etc/squid/squid.conf
chown proxy:proxy /etc/squid/storeurl.pl
chmod 777 /etc/squid/storeurl.pl
chown proxy:proxy /etc/squid/refresh.conf
chmod 777 /etc/squid/refresh.conf
#Kemudian cek configurasi untuk melihat error . dgn mengetikkan perintah berikut :
Squid -k parse
squid -k reconfigure
#Jika tidak ada error berarti bisa lanjut kelangkah berikut. Jika ada, edit command yang error tersebut di squid.conf
#Membuat folder-folder swap/cache di dalam folder cache yang telah ditentukan dg perintah :
squid -f /etc/squid/squid.conf -z
Restart squid dengan perintah :
#/etc/init.d/squid restart
#squid -NDd1 &&
reboot
Cek apakah squid sudah jalan:
# netstat -pln
Cek service apakah sudah jalan:
# netstat -pln |grep squid
cek access
#tail -f /var/log/squid/access.log | ccze
Langkah terakhir kita set ip address untuk lan card kedua yaitu eth1
Login ke ubuntu dgn winscp , kemudian masuk ke /etc/network/ dan klik interfaces. Kita edit isinya :
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.200
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 203.130.193.74 202.134.1.10 202.134.0.155
auto eth1
iface eth1 inet static
address 192.168.2.200
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
Lalu save.
Untuk membuatnya transparent ( tanpa mengisikan ip proxy di browser ) kita perlu menyetting iptable di file /etc/rc.local
Ketik perintah :
- nano /etc/rc.local (enter)
tambahkan code2 berikut sebelum exit 0
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/16 -j MASQUERADE
iptables --table nat -A PREROUTING -s 192.168.0.0/16 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
Tekan CTRL dan O ( enter) kemudian CTRL dan X ( enter)
Lalu reboot.
mas pas copy paste patch lusca minta konfirmasi [n]? itu ketiknya apa
ReplyDeletemas kenapa lusca nya selelu gagal, pas mau cek configurasi selalu ada jawaban squid abnormal dan apas patch lusca selalu ada pertanyaan [n]
ReplyDeleteitu tandanya luscanya udah di patch ...
ReplyDeletehatur nuhun gan tutornya
ReplyDeletetopologinya seperti apa gan kalo dengan mikrotik untuk hotspot
ReplyDelete