----Ada
beberapa artikel yang pernah saya baca yang membahas tentang cara instalasi
Squid Lusca di Ubuntu, baik itu untuk versi 12.04 maupun untuk versi Ubuntu
sebelum-sebelumnya. Tapi dari beberapa artikel tersebut, kebanyakan kurang
jelas step by step instalasinya. Ada juga yang kurang mantap performanya,
bahkan ada yang tidak bisa HIT sama sekali!
Satu-satunya
tutorial yang membahas secara gamblang dan lengkap sekali petunjuk step by
stepnya hanyalah di trit yang ada di forum Ubuntu-indonesia.com ini. Oleh
karena itu, berdasarkan sumber dari trit tersebut, saya akan mencoba
menuliskannya kembali disini dengan step by step yang insyaAllah lebih saya
perjelas lagi. Tujuannya tentu agar semua orang bisa mencoba membuat Squid
Lusca ini dengan mudah dan benar.
Yang Harus Disiapkan
1.
Memiliki pengetahuan dasar tentang
jaringan dan Linux. Setidaknya kalian sudah harus paham betul konsep jaringan
TCP/IP seperti ip address, subnet mask, dll. Selain itu kalian juga harus sudah
paham cara pengkonfigurasian jaringan di Ubuntu, seperti mengganti ip address,
gateway, dan dns. Silahkan download ebook saya disini untuk pembahasan mengenai cara-cara konfigurasi
jaringan dasar di Ubuntu Server 12.04 LTS.
2.
Memiliki pengetahuan tentang
perintah-perintah dasar di Linux, seperti cp, mv, mkdir, chown, chmod, dan vimatau nano.
Bisa kalian cari di google ebook-ebook yang membahas mengenai perintah dasar
terminal di Linux.
3.
Memiliki pengetahuan tentang cara
instalasi Ubuntu Server 12.04 LTS. Silahkan download ebook saya disini untuk pembahasan mengenai cara instalasi Ubuntu
Server 12.04 LTS.
4.
Memiliki Harddisk paling minimal 2 buah.
Karena wajib hukumnya untuk memisahkan antara harddisk untuk sistem dan
harddisk untuk penyimpanan cache. Tujuannya agar performa si Squid bisa
mencapai kemampuan tertinggi.
5.
buah kartu jaringan. Boleh menggunakan
kartu jaringan yang onboard kok.
Instalasi Ubuntu Server 12.04 dan Membuat Partisi
Terlebih dahulu kita melakukan Proses
instalasi Ubuntu Server 12.04 LTS untuk keperluan Proxy server. Berikut adalah
langkah-langkahnya :
1. Saat muncul bagian Partition
Method, pilih Manual.
2. Kemudian akan terlihat ada dua buah
harddisk disitu beserta ukurannya. HDD1 yang berukuran 8 GB akan saya bagi
untuk Swap Area sebesar 2GB dan sisanya untuk sistem /. Ukuran Swap Area
idealnya adalah 2x RAM. Namun apabila RAM kalian sudah 2GB keatas, maka
sebaiknya ukuran Swap Area kalian buat sebesar 2GB saja. Karena nanti mubazir
si Swap Areanya jarang terpakai sebab ukuran RAM kalian sudah cukup besar.
Tekan Enter pada HDD1. Apabila Harddisk kalian adalah
Harddisk baru, maka ketika kalian tekan Enter, akan muncul
pertanyaan seperti berikut. Pilih Yes
Setelah itu akan terlihat Free Space
dari HDD1. Tekan Enter pada Free Space tersebut.
Pilih Create New Partition.
Ketikkan ukuran partisi yang ingin
kalian buat. Karena disini saya ingin membuat Swap Area terlebih dahulu, maka
ketik saja 2 GB. Lalu tekan Enter.
Untuk tipe partisinya, pilih saja Primary.
Pilih Beginning apabila
muncul pertanyaan seperti ini.
Ganti bagian Use As menjadi Swap
Area. Jika sudah pilih Done Setting Up New Partition.
Lakukan hal yang sama untuk membuat
partisi /. Bedanya adalah pada bagian Partition Settings,
kalian pilih Use As : Ext4 journaling file system, dan Mount
point : /. Jika sudah pilih Done Setting Up New Partition.
Untuk harddisk yang kedua pun caranya
sama seperti diatas. Perbedaannya pada bagian Partition Settings,
kalian pilihUse As : ReiserFS journaling file system, Mount
point > Enter Manually > /proxy. Jika sudah pilih Done
Setting Up New Partition.
Jika kalian melakukannya
dengan benar, maka tampilannya kira-kira akan seperti berikut. Setelah itu
tekan Enter padaFinish partitioning and write changes to
disk.
Instalasi Squid Lusca
1. Pertama-tama pastikan bahwa si Proxy
kalian ini sudah bisa terkoneksi ke internet. Silahkan diatur saja settingan
gateway dan dns sesuai dengan skema jaringan milik kalian. Kalau topologi
jaringan saya adalah sebagai berikut :
internet
--------------------------------(10.0.0.2)mikrotik(192.168.1.1)--(192.168.1.2-192.168.1.100)
client
(192.168.0.1)
|
|
|
(192.168.0.2)
(192.168.0.2)
proxy
2. Aktifkan user root agar nanti tidak terlalu ribet menggunakan sudo di setiap perintah yang kalian lakukan. Langkah ini sebenarnya opsional saja, karena walaupun tidak mengaktifkan user root, kalian masih bisa melakukan semua langkah-langkah instalasi Squid Lusca-nya.
Untuk mengaktifkan user root silahkan
eksekusi perintah berikut :
$ sudo –i
# passwd
Lalu masukkan password baru untuk user root.
3. Langkah kedua, kalian perlu menaikkan jumlah maksimal file descriptor yang bisa dibaca oleh sistem. Ini sangat diperlukan apabila ukuran cache kalian sudah diatas 100GB, karena semakin besar ukuran cache, maka semakin besar pula kebutuhan file descriptornya.
Untuk menaikkan file descriptor, eksekusi perintah berikut :
# nano /etc/security/limits.conf
Pada bagian paling bawah file tersebut
tambahkan script ini :
root - nofile 65535
Setelah itu restart komputer :
# reboot
Setelah komputer direstart, pastikan bahwa efeknya sudah berjalan :
# ulimit -a | grep 'open files'
open files (-n) 65535
4. Selanjutnya kita harus menambahkan
modul ip_conntrack agar performa squid semakin baik :
# nano /etc/modules
Pada baris paling bawah tambahkan :
ip_conntrack
Simpan jika sudah.
5. Langkah berikutnya adalah menginstall
paket-paket yang diperlukan untuk menginstall Lusca :
# apt-get update
# apt-get install apache2 php5 squid squidclient squid-cgi gcc build-essential
sharutils ccze libzip-dev automake1.9 libfile-readbackwards-perl -y
6. Setelah itu download juga paket Luscanya :
# wget
http://backcode.googlecode.com/files/LUSCA_HEAD-r14809-patch.tar.bz2
7. Setelah proses download selesai, ekstraklah file tersebut :
# tar -xvjf
LUSCA_HEAD-r14809-patch.tar.bz2
8. Sekarang baru kita masuk ke dalam
tahap pengkompilan. Sebelum itu, kalian harus mengetahui terlebih dahulu kode
CFLAGS dari tipe prosesor kalian. Karena kode CFLAGS ini kita perlukan untuk
proses pengkompilan.
Ketahui terlebih dahulu tipe prosesor kalian dengan mengetikkan perintah berikut :
Ketahui terlebih dahulu tipe prosesor kalian dengan mengetikkan perintah berikut :
# cat /proc/cpuinfo
Perhatikan bagian yang kira-kira ada
seperti ininya :
processor : 0
vendor_id :
GenuineIntel cpu family : 6
model:37 model name :
Intel(R) Core(TM) i3 CPU M 380 @ 2.53GHz
Setelah kalian mengetahui tipe prosesor kalian, baru cari CFLAGS nya dari web ini http://wiki.gentoo.org/wiki/Safe_CFLAGS atau web ini http://gentoo-en.vfose.ru/wiki/Safe_Cflags/Intel#Core_i7_and_Core_i5.2C_Xeon_55xx khusus untuk intel Xeon.
Dari situ kalian bisa dapatkan kode yang
kira-kira seperti ini (yang ini merupakan CFLAGS untuk Processor Intel Core i3)
:
CHOST="i686-pc-linux-gnu" CFLAGS="-O2 -pipe -march=core2 -msse4 -mcx16 -mpopcnt -msahf -fomit-frame-pointer" CXXFLAGS="${CFLAGS}"
Silahkan kalian kopi, lalu simpan baik-baik. Kode ini akan kita perlukan untuk langkah selanjutnya.
9. Yuk kita mulai proses kompilnya :
# cd LUSCA_HEAD-r14809
# make clean
# CHOST="i686-pc-linux-gnu" CFLAGS="-O2 -pipe -march=core2 -msse4 -mcx16 -mpopcnt -msahf -fomit-frame-pointer" CXXFLAGS="${CFLAGS}" \
./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-gnuregex --enable-async-io=24 --with-aufs-threads=24\--with- policies=heap--enable-icmp --enable-delay-pools--disable-wccp\--enable-snmp --enable-cache-digests --enable-default-err-language=English\--enable-err-languages=English --enable-linux-netfilter --disable-ident-lookups\--with-maxfd=65535 --enable-follow-x-forwarded-for --enable-large-cache-files \--with-large-files --enable-referer-log
# make
# make install
# make clean
# CHOST="i686-pc-linux-gnu" CFLAGS="-O2 -pipe -march=core2 -msse4 -mcx16 -mpopcnt -msahf -fomit-frame-pointer" CXXFLAGS="${CFLAGS}" \
./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-gnuregex --enable-async-io=24 --with-aufs-threads=24\--with- policies=heap--enable-icmp --enable-delay-pools--disable-wccp\--enable-snmp --enable-cache-digests --enable-default-err-language=English\--enable-err-languages=English --enable-linux-netfilter --disable-ident-lookups\--with-maxfd=65535 --enable-follow-x-forwarded-for --enable-large-cache-files \--with-large-files --enable-referer-log
# make
# make install
nb : pada script yang saya tandai merah,
kalian ganti dengan kode CFLAGS milik kalian masing-masing.
Jika tidak ada pesan error, maka sampai tahap ini squid lusca kalian sudah berhasil terinstall.
10. Selanjutnya kalian harus mengganti hak akses partisi penyimpanan cache kalian agar menjadi kepemilikan userproxy dan grup proxy :
Jika tidak ada pesan error, maka sampai tahap ini squid lusca kalian sudah berhasil terinstall.
10. Selanjutnya kalian harus mengganti hak akses partisi penyimpanan cache kalian agar menjadi kepemilikan userproxy dan grup proxy :
# chown -R proxy.proxy /proxy
# chmod -R 777 /proxy
11. Buat juga direktori untuk
penyimpanan file log dari si Squid :
# mkdir /var/log/squid
# mkdir /var/log/squid
Jangan lupa ganti kepemilikannya menjadi
milik user proxy dan grup proxy juga :
# chown -R proxy.proxy /var/log/squid
# chown -R proxy.proxy /var/log/squid
12. Untuk file-file konfigurasi milik
squidnya, saya sudah menyiapkannya untuk kalian. File-file konfigurasi ini saya
dapatkan dari trit ubuntu-indonesia.com juga. Silahkan didownload saja :
# wget https://dl.dropboxusercontent.com/u/64064946/fileconfig.tar.gz
# wget https://dl.dropboxusercontent.com/u/64064946/fileconfig.tar.gz
13. Ekstrak dan kopikan file-file
konfigurasi tersebut ke direktori /etc/squid :
# tar -xvf
fileconfig.tar.gz
# cp fileconf/*
/etc/squid
14. Beri hak akses eksekusi untuk semua
file berekstensi .pl pada direktori /etc/squid :
# chmod 0755 /etc/squid/*.pl
# chmod 0755 /etc/squid/*.pl
15. Dari semua file-file konfigurasi
yang saya berikan hampir semuanya sudah tinggal pakai. Namun apabila kalian ada
yang menggunakan konfigurasi yang berbeda dari punya saya, seperti subnet
klien, nama disk cache, besar RAM, maupun ukuran harddisk disk cache, maka ada
beberapa file yang perlu kalian edit.
Merubah subnet klien
Merubah subnet klien
Sesuai dengan topologi jaringan saya
berikan diatas, subnet untuk klien saya adalah 192.168.1.0/24. Jika
kalian ingin merubahnya sehubungan dengan perbedaan topologi jaringan, maka
edit file acl.conf :
# nano /etc/squid/acl.conf
# nano /etc/squid/acl.conf
Cari baris acl localnet src
192.168.1.0/24 (Gunakan fasilitas search dengan menekan tombol CTRL +
W). Lalu ganti bagian 192.168.1.0/24 sesuai dengan yang
kalian inginkan. Jika sudah simpan dan tutup file tersebut.
Merubah nama disk cache
Merubah nama disk cache
Pada artikel ini, disk cache yang saya
buat bernama /proxy. Apabila kalian menggunakan nama lain, silahkan
edit filesquid.conf :
# nano /etc/squid/squid.conf
Cari bagian cache_dir aufs
/proxy 16000 37 256 , lalu ganti bagian /proxy menjadi
nama disk cache sesuai dengan milik kalian masing-masing.
Mengubah ukuran disk cache
Ukuran harddisk untuk disk cache pada artikel ini adalah sebesar 20GB. Untuk mengubahnya sesuai dengan ukuran disk cache kalian, edit file /etc/squid/squid.conf :
# nano
/etc/squid/squid.conf
Cari bagian cache_dir aufs
/proxy 16000 37 256 . Perhatikan yang
saya tandai merah dan biru. Untuk yang saya tandai merah, itu merupakan 80%
dari ukuran total disk cache saya yang sebesar 20GB. Ini merupakan prinsip
penggunaan disk cache yang baik. Sehingga disitu saya tulis 16000 (satuannya
megabyte). Silahkan kalian ganti dengan 80% dari total ukuran disk cache kalian
masing-masing.
Sedangkan untuk yang saya tandai biru, itu diperoleh dari rumus : ukuran 80% disk cache dalam satuan byte/13/256/256 X 2.
Sedangkan untuk yang saya tandai biru, itu diperoleh dari rumus : ukuran 80% disk cache dalam satuan byte/13/256/256 X 2.
Kira-kira cara menghitungnya seperti ini
: 16000000/13/256/256 X 2 = 37.5. Dibulatkan saja menjadi 37.
Mengubah ukuran RAM
Mengubah ukuran RAM
RAM yang saya gunakan pada artikel ini
adalah 2GB. Jika kalian memiliki ukuran RAM yang berbeda dari saya, untuk
mengubahnya kalian perlu mengedit file tune.conf :
# nano
/etc/squid/tune.conf
Cari bagian ipcache_size 4096 lalu
ganti angka 4096 dengan 2X ukuran RAM kalian dalam satuan
Megabyte. Sebagai contoh, disitu tertulis 4096 karena hasil
dari 2 X ukuran ram saya yaitu 2048.
Setelah itu cari lagi bagian fqdncache_size 2048 lalu ganti angka 2048 dengan ukuran RAM kalian dalam satuan Megabyte. Jika sudah simpan dan tutup file tersebut.Untuk script-script lainnya, bisa kalian pelajari sendiri dengan melihat semua file yang ada didalam direktori/etc/squid.
Setelah itu cari lagi bagian fqdncache_size 2048 lalu ganti angka 2048 dengan ukuran RAM kalian dalam satuan Megabyte. Jika sudah simpan dan tutup file tersebut.Untuk script-script lainnya, bisa kalian pelajari sendiri dengan melihat semua file yang ada didalam direktori/etc/squid.
Testing
1. Sebelum kalian mengetes squid kalian, pertama-tama matikan terlebih dahulu service dari Squid3. Karena nanti akan bentrok dengan service milik Squid Lusca.
1. Sebelum kalian mengetes squid kalian, pertama-tama matikan terlebih dahulu service dari Squid3. Karena nanti akan bentrok dengan service milik Squid Lusca.
# service squid3 stop
2. Kemudian kalian harus membuat
direktori-direktori untuk tempat penyimpanan cache didalam disk cache kalian
dengan menggunakan perintah berikut :
# squid -f
/etc/squid/squid.conf –z
3. Baru sekarang jalankan squidnya :
# squid -NDd1 &
Berhubung kita menjalankan squidnya pada
mode background, maka setelah kalian menjalankan perintah diatas, kalian bisa
tekan tombol Enter.
4. Lalu pastikan kalau squid sudah mampu
menjalankan servicenya dengan file descriptor yang sudah kalian tentukan
diawal, yaitu sebesar 65535 :
#squidclient mgr:info
| grep 'file descri'
Maximum number of file descriptors: 65535 Available number of file descriptors: 65511 Reserved number of file descriptors: 100
Maximum number of file descriptors: 65535 Available number of file descriptors: 65511 Reserved number of file descriptors: 100
5. Terakhir, pantau log file dari squid
dengan perintah berikut :
# tail -f
/var/log/squid/access.log | ccze
Membuat Autostart Squid
Agar service squid langsung berjalan
setiap komputer menyala, maka kalian harus menambahkan script autostart baru
pada direktori /etc/init.d :
# nano
/etc/init.d/squid
Kopikan semua script yang ada di halaman ini
http://web.suffieldacademy.org/ils/netadmin/docs/software/squid/etc/init.d/squid kedalam
file tersebut. Jika sudah simpan dan tutup filenya.
nb : file /etc/init.d/squid memang
kosong. jadi jangan kaget ketika kalian mengetikkan perintah diatas, ternyata
malah seperti membuat file baru.
Kemudian eksekusi dua perintah berikut
untuk memberikan hak akses executable dan membuat file tersebut autostart
setiap komputer dijalankan :
chmod 755 /etc/init.d/squid
update-rc.d squid defaults
Selanjutnya masukkan juga script berikut
pada file /etc/rc.local untuk membuat squid3 tidak berjalan setiap komputer
nyala. Kalau tidak, takutnya nanti bentrok antara squid3 dengan lusca.
nano /etc/rc.local
nano /etc/rc.local
Masukkan script ini :service squid3 stop
Simpan dan tutup file tersebut. Sumber:
[linuxkudotcom]



















0 komentar:
Posting Komentar