- 1 CPU Intel Pentium 4 /AMD, 1 GB RAM-minimal, 80 GB HD-minimal , 1 NIC ,CD/DVD ROM SATA/IDE ( Lan Card 3com tidak terdeteksi oleh Ubuntu / Lebih baik gunakan Lan Card PCI dari pada Lan Card onboard ).
- CD Ubuntu Server 11.10 (32 Bit atau 64 Bit) – Saran untuk Pemula 32 Bit
- Kabel lan Straight dan Switch/Hub
- Modem yang sudah terkoneksi internet ( Yang digunakan disini Koneksi Speedy )
Langkah Instalasi : ( Kabel lan jangan dipasang dulu ke CPU)
1. Setting dahulu boot priority ke CD-ROM di Bios agar CPU boot ke CD..jangan lupa save and exit
2. Pilih language english (enter)
3. Pilih instal ubuntu server (enter)
4. Tekan enter pada choose language english
5. Pilih united states
6. Klik no pada detect keyboard layout?
7. Klik USA pada ubuntu installer main menu
8. Klik USA pada keyboard layout
9. Klik continue pada configure the network
10. Pilih configure network manually isi ip address dg 192.168.1.2 ( sesuaikan dengan ip jaringan anda ) pilih continue enter
11. Netmask 255.255.255.0 pilih continue enter
12. Gateway 192.168.1.1 ( sesuaikan dengan IP Modem ) terus klik continue
13. Name server addresses 203.130.193.74 ( Boleh diganti dengan dns lain. Tapi saran saya jika anda menggunakan speedy lebih baik pakai dns ini karna lebih kencang) pilih continue enter ( Kabel lan baru boleh dipasangkan ).
14. Hotsnama : isi dg proxyku (boleh diganti sesuai selera anda) terus pilih continue enter
15. Domain name: di kosongin saja, pilih continue enter
16. Pada configure the clok pilih select from worldwide list terus cari jakarta (sesuaikan lokasi anda) terus enter
17. Pada menu partition disk pilih manual
18. Kita hapus partisi lama dulu :
19. Pilih partisi nya terus enter pilih delete the partion (ulangi perintah ini untuk semua partisi yg tersisa)
20. Jika telah selesai pilih Guided partitioning, kemudian pilih manual arahkan pada FREE SPACE (enter),
21. Pilih Create new partition (enter)
22. New partition size isi 256 mb (pilih continue dan enter), pilih Primary (enter), pilih Beginning (enter), pada use as pilih EXT4 (tekan tombol space untuk memilih) (enter) pada Mount point pilih /boot (enter), pd mount option pilih[*] noatime (tekan tombol space untuk memilih) (pilih continue dan enter), pada Bootable Flag rubah menjadi on JIKA STATUS NYA TDK BERUBAH ABAIKAN SAJA kemudian pilih done setting up the partition
23. New partition size isi 20 gb (pilih continue dan enter), pilih Primary (enter), pilih Beginning (enter), pada use as pilih EXT4 (enter) pada Mount point pilih / (enter), pd mount option pilih[*] noatime (pilih continue dan enter), kemudian pilih done setting up the partition
24. Arahkan pada FREE SPACE (enter), pilih Create new partition (enter) new partition size isi 4 gb ( besarnya 2x RAM) pilih continue dan enter, pilih Primary (enter), pilih Beginning (enter), pada use as pilih swap area (enter), kemudian Pilih done setting up the partition
25. Arahkan pada FREE SPACE (enter), pilih Create new partition (enter) new partition size isi sisa semua harddisk (pilih continue dan enter), pilih Primary (enter), pilih Beginning (enter), pada use as pilih btrFS atau ReiserFS (enter)
CATATAN :
btrFs untuk 64bit ( lebih baik tidak digunakan karna sering crash, gunakan saja ReiserFS )
ReiserFS untuk 32bit
pada Mount point pilih enter manually buat menjadi /cache (diketik), pd mount option pilih[*] noatime dan realtime kemudian Pilih continue dan done setting up the partition.
26. Kemudian pilih finis partitioning and write changes to disk, write the changes to disk pilih yes
27. pada full name for the new user isi dg proxyku (bisa diubah sesuai selera), terus continue & enter
28. pada Username for your account isi dg proxyku (bisa diubah sesuai selera), terus continue & enter
29. pada a password for the new user isi dg proxyku (bisa diubah sesuai selera), terus continue & enter
30. pada re-enter password to verify isi dg proxyku, terus continue & enter
31. pada use weak password pilih yes
32. pada encrypt your home directory pilih no
33. pada HTTP proxy information KOSONGIN SAJA
34. pada configurasi apt 43% tekan enter, juga pada 81% tekan enter pilih no automatic update
35.pada choose software to install pilih OpenSSH server pilih continus pd finish the installation dan reboot, ambil CD Ubuntu, Setting di BIOS -- 1st Boot kembalikan ke Hardisk
selanjutnya
# login dg proxyku (enter)
# password proxyku (enter)
# ketik sudo su - (enter)
# isi proxyku (enter)
# password proxyku (enter)
# ketik sudo su - (enter)
# isi proxyku (enter)
jika menginginkan login sebagai root setiap reboot ubuntu ikuti langkah berikut :
# ketik passwd (enter)
# enter new UNIX password isi dg proxyku (enter)
# retype new UNIX password isi proxyku (enter)
# enter new UNIX password isi dg proxyku (enter)
# retype new UNIX password isi proxyku (enter)
#ketik login root atau sudo su- (enter)
#password proxyku (enter)
Untuk Ubuntu Server 64 bit cara mengganti password root-nya dengan perintah berikut :
#sudo passwd
Kemudian login dengan perintah :
#sudo login root
Untuk Ubuntu Server 64 bit cara mengganti password root-nya dengan perintah berikut :
#sudo passwd
Kemudian login dengan perintah :
#sudo login root
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 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 )
Setelah kita ini beralih ke windows (CPU lain) untuk mendownload beberapa file.
1. Download squid-2.7STABLE9PATCH disini linknya
2. Download winscp ( cari digoogle, terserah mau versi berapa aja )
3. Download putty ( cari digoogle, terserah mau versi berapa aja )
4. Jalankan winscp . Isi dikotak Host name ip Ubuntu server ( 192.168.1.2). Di User name isi root . Di password isi proxyku . Klik login.
5. Di jendela WINSCP sebelah kanan klik difolder root bukan <root> setelah itu cari lokasi file squid-2.7STABLE9PATCH yang anda download tadi di jendela sebelah kiri. Untuk memindahkanya cukup dengan drag file tersebut ke jendela sebelah kanan tadi (root) atau dengan fitur copy paste.
6. Jalan Putty Isi dikotak Host name ip Ubuntu server ( 192.168.1.2) klik open
7. Isi login dengan root kemudian ketik password proxyku
8. Ketik perintah berikut :
tar xvf squid-2.7.STABLE9PATCH.tar.gz (enter)
cd squid-2.7.STABLE9 (enter)
CATATAN : jika memakai ubuntu 64bit lakukan perintah ini #———> make distclean
9.Masih di putty . Langkah selanjutnya kita akan mengcompile/memuat kernel ubuntu. Blok dan copy semua code berikut ( ingat jangan lebih dan jangan kurang )
./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=24 --with-aufs-threads=24 --with-pthreads --enable-storeio=aufs \--enable-linux-netfilter --enable-arp-acl --enable-epoll --enable-removal-policies=heap --with-aio --with-dl --enable-snmp \--enable-delay-pools --enable-htcp --enable-cache-digests --disable-unlinkd --enable-large-cache-files --with-large-files \--enable-err-languages=English --enable-default-err-language=English --with-maxfd=65536
10. Klik kanan di jendela putty ( code compile tadi otomatis terpaste ) lalu enter ..tunggu sampai proses compile selesai.
11. Ketik perintah berikut diputty :
- make (enter)
- sudo make install (enter)
tunggu sampai selesai.
12. Kembali ke windows untuk mendowload file squid : Silahkan download disini LINK
13. Extract file tersebut diwindows. Lalu edit file squid.conf yang berada difolder "pastekan isi folder di etc-squid"
14. Edit file squid.conf dengan menggunakan notepad
15. Edit line2 berikut :
- acl localnet src 192.168.1.0/24 #------ sesuaikan dengan ip jaringan anda. Maksud 192.168.1.0/24 disini adalah jaringan ip di tempat menggunakan ip 192.168.1.1 sampai dengan 192.168.1.254..jadi jika ditempat anda ip address yang anda gunakan 192.168.0.2 berarti ip jaringan anda yg diisikan adalah 192.168.0.0/24
- dns_nameservers 192.168.1.1 #-----sesuaikan dengan gateway yang dipakai oleh ubuntu server bukan dns server yang dipakai oleh ubuntu server
- cache_dir aufs /cache 200000 32 256 #untuk ubuntu 32 bit #----ganti kata yang berwarna merah dgn ukuran ukuran cache anda. Sebelumnya kita telah membuat partisi cache sebesar 56 GB maka besar cache yang akan kita gunakan disini adalah 40000 (40 GB). jangan lupa untuk menghapus "#untuk ubuntu 32 bit"
agar tidak terjadi error.
16. Save File squid.conf dgn menekan ctrl dan S pada keyboard lalu close.
17. Berikutnya edit file squid.conf.pl dgn menggunakan notepad. Hampir sama dgn file squid.conf . Edit line2 berikut :
- acl localnet src 192.168.1.0/24
- dns_nameservers 192.168.1.1
- cache_dir aufs /cache 200000 32 256
sesuaikan dengan yang kita edit difile squid.conf lalu save dan close.
18. Jalankan WINSCP. login dgn root ke ubuntu server.
19. Matikan squid terlebih dahulu dgn mengetik perintah berikut di putty :
- sudo /etc/init.d/squid stop
Tunggu sampai squid benar2 stop kira2 10 detik lamanya.
Pindahkan file2 yang berada di folder "setting squid" kedalam ubuntu server.
drag and drop file squid ke folder /etc/init.d/
drag and drop file sysctl.conf ke folder /etc/
drag and drop file squid.conf , storeurl.pl dan squid.conf.pl ke folder /etc/squid
20. Jalankan putty login dgn root ke ubuntu server. Kemudian jalankan perintah berikut :
sudo chmod +x /etc/init.d/squid
agar file squid bisa diexecute ( set executeable)21. Masih diputty kita set permission pada folder cache dan file storeurl.pl. Dengan mengetikkan perintah berikut :
- chown proxyku:proxyku /cache (enter) -> proxyku:proxyku (username:group) sesuaikan dgn username yang anda buat
- chmod 777 /cache (enter)
- chown proxyku:proxyku /etc/squid/storeurl.pl (enter)
- chmod 777 /etc/squid/storeurl.pl (enter)
22. Kemudian cek configurasi untuk melihat error . dgn mengetikkan perintah berikut :
/etc/init.d/squid -k parse (enter)atau service squid -k parse
Atau bisa dengan Debugging Mode :
/etc/init.d/squid -Ncd1
( Jika testnya ok, akan terprint Ready to serve requests.)
Jika tidak ada error berarti bisa lanjut kelangkah berikut. Jika ada edit command yang error tersebut di squid.conf
23. Membuat folder-folder swap/cache di dalam folder cache yang telah ditentukan dg perintah :squid -f /etc/squid/squid.conf -z (enter)
24. Restart squid dengan perintah :
/etc/init.d/squid restart (enter)
25. Kemudian jalan perintah berikut untuk melihat acces log yang jika bertambah sendiri berarti anda telah sukses menginstall dan menjalankan squid.
tail -f /var/log/squid/access.log (enter)
Kemudian tes browsing di PC client dgn mengisikan proxy di settingan browser ex: mozilla 192.168.1.2 dgn port 3128.
26. 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.1.0/24 -j MASQUERADE
Tekan CTRL dan O ( enter) kemudian CTRL dan X ( enter).
27. Restart Ubuntu Server dgn perintah sudo reboot
28. Hilangkan settingan ip proxy sebelumnya dibrowser dan ganti gateway PC client menjadi 192.168.1.2
29. Jalankan putty dan cek access.log dgn perintah
tail -f /var/log/squid/access.log
kemudian test browsing di PC client jika acces log bertambah diputty berarti anda sudah sukses menyetting ubuntu server dgn squid.
Tambahan : jika anda ingin menghapus cache lakukan perintah berikut diputty:
atau bisa anda jalankan melalu satu file
- Buka Terminal Command Line
- Matikan Service squid : sudo /etc/init.d/squid stop (enter tunggu sampai benar2 stop)
- Hapus Cachenya : rm -fdR /cache/* (enter)
- Bangun kembali direktorinya : squid -f /etc/squid/squid.conf -z (enter)
- Aktifkan Squid : /etc/init.d/squid restart (enter)
Buka notepad lalu pastekan code2 berikut
#!/bin/sh
sudo /etc/init.d/squid stop
rm -fdR /cache/* squid -f /etc/squid/squid.conf -z
/etc/init.d/squid restart
- save dengan nama file hapuscache.sh
- kemudian drag file hapuscache.sh kedalam folder /root/squid-2.7.STABLE9 dgn menggunakan WINSCP
- Jalankan putty dgn login root masuk ke folder /root/squid-2.7.STABLE9 dgn perintah :
cd /root/squid-2.7.STABLE9 (enter)
- Set agar hapuscache.sh bisa dieksekusi :
sudo chmod +x /root/squid-2.7.STABLE9/hapuscache.sh (enter)
- Set permission untuk folder hapuscache.sh
chown proxy:proxy /root/squid-2.7.STABLE9/hapuscache.sh (enter)
chmod 777 /root/squid-2.7.STABLE9/hapuscache.sh (enter)
- Pindahkan file hapuscache.sh ke folder root dgn WINSCP
- jalankan hapuscache.sh diputty dgn mengetik :
./hapuscache.sh (enter)
folder cache akan dibersihkan dan direbuild kembali secara otomatis.
Tambahan command buat cek acces log client
# tail -f /var/log/squid/access.log | ccze (text akan berwarna warni)
untuk menampilkan access log HIT saja
#tail -f /var/log/squid/access.log |grep HIT
Penjelasan buat delay parameter di squid.conf
delay_pools 2
Jumlah Kelompok Pembatasan ( 2 Kelompok )
delay_class 2 1
delay_parameters 2 30000/1000000
delay_access 2 allow download
delay_access 2 deny all
Penghitungan data transfer menggunakan bytes 30000 = 30KB / detik. 30000/1000000 artinya pada saat melakukan download awal kecepatan download bisa mencapai 1000KB / detik maka kecepatan akan diturunkan menjadi 30K / detik
Cara mengecek besarnya data yang telah tercache
df -h (enter)
Penjelasan buat delay parameter di squid.conf
delay_pools 2
Jumlah Kelompok Pembatasan ( 2 Kelompok )
delay_class 2 1
delay_parameters 2 30000/1000000
delay_access 2 allow download
delay_access 2 deny all
Penghitungan data transfer menggunakan bytes 30000 = 30KB / detik. 30000/1000000 artinya pada saat melakukan download awal kecepatan download bisa mencapai 1000KB / detik maka kecepatan akan diturunkan menjadi 30K / detik
Cara mengecek besarnya data yang telah tercache
df -h (enter)
Jika menggunakan 2 lan card :
Kalau 2 lan card tentukan dulu ip jaringan ke modem dan ip jaringan lokal.
Misalkan disini ip modem 192.168.1.1
Ip lan card ( eth0 )ubuntu ke modem 192.168.1.2
Ip lan card ( eth1 )ubuntu ke client 192.168.0.1
Ip client 192.168.0.2 - 254 dengan
Client gateway 192.168.0.1
Diatas ip ke modem (eth0) sudah diset jadi kita tinggal mengeset ip ubuntu ke client ( eth1 )
jalankan putty login dgn root, ketikkan perintah berikut :
sudo nano /etc/network/interface
tambahkan baris berikut :
# eth1 >>“ Jaringan Lokal“
auto eth1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
tekan CTRL dan O untuk melakukan perubahan kemudian enter. Setelah itu tekan CTRL dan X untuk exit.
- Restart service jaringan anda
sudo /etc/init.d/networking restart
Kemudian edit file squid.conf dengan putty/winscp
acl localnet src 192.168.0.0/24
jangan lupa untuk merestart squid
sudo /etc/init.d/squid restart
kemudian setting iptable jalankan perintah berikut diputty :
sudo nano /etc/rc.local
hapus dulu baris berikut :
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE
iptables --table nat -A PREROUTING -s 192.168.1.0/24 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
kemudian tambahkan baris berikut sebelum exit 0:
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE
iptables --table nat -A PREROUTING -s 192.168.0.0/24 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
iptables --table nat -A PREROUTING -s 192.168.0.0/24 -p udp -m udp --dport 80 -j REDIRECT --to-ports 3128
Tekan CTRL dan O ( enter) kemudian CTRL dan X ( enter).
Restart Ubuntu Server dgn perintah sudo reboot
Untuk yang mengalami "youtube error has occured"
Buka storeurl.pl dgn winscp dan klik edit kemudian,
Tambahkan command berikut di bawah command "# compatibility for old cached get_video?video_id"
#======
} elsif (m/^http:\/\/([0-9.]{4}|.*\.youtube\.com|.*\.googlevideo\.com|.*\.video\.google\.com)\/videoplayback\?(.*)/) {
$p_str = $2;
$tag = "";
$alg = "";
$id = "";
$range = "";
if ($p_str =~ m/(itag=[0-9]*)/){$tag = "&".$1}
if ($p_str =~ m/(algorithm=[a-z]*\-[a-z]*)/){$alg = "&".$1}
if ($p_str =~ m/(id=[a-zA-Z0-9]*)/){$id = "&".$1}
if ($p_str =~ m/(range=[0-9\-]*)/){$range = "&".$1; $range =~ s/-//; $range =~ s/range=//; }
print $x . "http://video-srv.youtube.com.SQUIDINTERNAL/" . $tag . "&" . $alg . "&" . $id . "&" . $range . "\n";
#==========
Restart Squid : /etc/init.d/squid restart
Atau kalau masih error juga coba dgn storeurl yang ini :
Storeurl Terbaru untuk Youtube
Misalkan disini ip modem 192.168.1.1
Ip lan card ( eth0 )ubuntu ke modem 192.168.1.2
Ip lan card ( eth1 )ubuntu ke client 192.168.0.1
Ip client 192.168.0.2 - 254 dengan
Client gateway 192.168.0.1
Diatas ip ke modem (eth0) sudah diset jadi kita tinggal mengeset ip ubuntu ke client ( eth1 )
jalankan putty login dgn root, ketikkan perintah berikut :
sudo nano /etc/network/interface
tambahkan baris berikut :
# eth1 >>“ Jaringan Lokal“
auto eth1
iface eth1 inet static
address 192.168.0.1
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
tekan CTRL dan O untuk melakukan perubahan kemudian enter. Setelah itu tekan CTRL dan X untuk exit.
- Restart service jaringan anda
sudo /etc/init.d/networking restart
Kemudian edit file squid.conf dengan putty/winscp
acl localnet src 192.168.0.0/24
jangan lupa untuk merestart squid
sudo /etc/init.d/squid restart
kemudian setting iptable jalankan perintah berikut diputty :
sudo nano /etc/rc.local
hapus dulu baris berikut :
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE
iptables --table nat -A PREROUTING -s 192.168.1.0/24 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
kemudian tambahkan baris berikut sebelum exit 0:
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE
iptables --table nat -A PREROUTING -s 192.168.0.0/24 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
iptables --table nat -A PREROUTING -s 192.168.0.0/24 -p udp -m udp --dport 80 -j REDIRECT --to-ports 3128
Tekan CTRL dan O ( enter) kemudian CTRL dan X ( enter).
Restart Ubuntu Server dgn perintah sudo reboot
Untuk yang mengalami "youtube error has occured"
Buka storeurl.pl dgn winscp dan klik edit kemudian,
Tambahkan command berikut di bawah command "# compatibility for old cached get_video?video_id"
#======
} elsif (m/^http:\/\/([0-9.]{4}|.*\.youtube\.com|.*\.googlevideo\.com|.*\.video\.google\.com)\/videoplayback\?(.*)/) {
$p_str = $2;
$tag = "";
$alg = "";
$id = "";
$range = "";
if ($p_str =~ m/(itag=[0-9]*)/){$tag = "&".$1}
if ($p_str =~ m/(algorithm=[a-z]*\-[a-z]*)/){$alg = "&".$1}
if ($p_str =~ m/(id=[a-zA-Z0-9]*)/){$id = "&".$1}
if ($p_str =~ m/(range=[0-9\-]*)/){$range = "&".$1; $range =~ s/-//; $range =~ s/range=//; }
print $x . "http://video-srv.youtube.com.SQUIDINTERNAL/" . $tag . "&" . $alg . "&" . $id . "&" . $range . "\n";
#==========
Restart Squid : /etc/init.d/squid restart
Atau kalau masih error juga coba dgn storeurl yang ini :
Storeurl Terbaru untuk Youtube
Menyembunyikan IP Public dengan Squid
Masukkan opsi berikut di squid.conf dan squid.conf.pl
header_access Via deny all
header_access Proxy-Connection deny all
header_access X-Forwarded-For deny all
Jangan lupa untuk merestart squid :)
Melihat Berapa Hit yang sudah dilakukan oleh Proxy :
Jalankan Command berikut diputty atau console :
squidclient mgr:client_list
Hasilnya liat di baris-baris paling bawah :
TOTALS
ICP : 0 Queries, 0 Hits
HTTP: 1833797 Requests, 791694 Hits ( 43%)
43% itu adalah cache hit yang sebenarnya, berapa % bandwidth internet yang dihemat dengan penggunaan squid cache proxy
Source : http://wiki.warneter.net