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 biar semua orang bisa mencoba membuat Squid Lusca ini dengan mudah dan benar. :)
Yang Harus Disiapkan
- Memiliki pengetahuan dasar wacana jaringan dan Linux. Setidaknya kalian sudah harus paham betul konsep jaringan TCP/IP ibarat ip address, subnet mask, dll. Selain itu kalian juga harus sudah paham cara pengkonfigurasian jaringan di Ubuntu, ibarat mengganti ip address, gateway, dan dns.
- Memiliki pengetahuan wacana perintah-perintah dasar di Linux, ibarat cp, mv, mkdir, chown, chmod, dan vim atau nano. Bisa kalian cari di google ebook-ebook yang membahas mengenai perintah dasar terminal di Linux.
- Memiliki pengetahuan wacana cara instalasi Ubuntu Server 12.04 LTS.
- Memiliki Harddisk paling minimal 2 buah. Karena wajib hukumnya untuk memisahkan antara harddisk untuk sistem dan harddisk untuk penyimpanan cache. Tujuannya biar performa si Squid bisa mencapai kemampuan tertinggi.
- 1 buah kartu jaringan. Boleh menggunakan kartu jaringan yang onboard kok.
Spesifikasi Komputer Saya
Spek komputer berikut merupakan spek komputer yang saya gunakan di Virtualbox untuk keperluan praktek pembuatan Proxy pada artikel ini. Konsepnya sama saja, silahkan diubahsuaikan dengan spesifikasi komputer yang kalian punya.
1. Processor : Intel Core i3
2. Ram : 2 GB
3. HDD :
- HDD1 : 8 GB --> Untuk sistem
- HDD 2 : 20 GB --> Untuk penyimpanan cache
4. 1 buah kartu jaringan onboard.
Instalasi Ubuntu Server 12.04 LTS dan Pemartisian
Proses instalasi Ubuntu Server 12.04 LTS untuk keperluan Proxy server notabene sama saja dengan cara instalasi Ubuntu Server yang saya tulis di ebook saya. Makara silahkan kalian ikuti saja step-by-step yang ada disitu. Letak perbedaannya hanya terdapat pada bab pemartisian harddisk. Kalau di ebook saya menggunakan metode Guided, maka khusus untuk pembuatan Proxy, kita harus mempartisi Harddisk kita secara manual. Berikut yaitu 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 yaitu 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 alasannya ukuran RAM kalian sudah cukup besar.
Tekan Enter pada HDD1. Apabila Harddisk kalian yaitu Harddisk baru, maka dikala kalian tekan Enter, akan muncul pertanyaan ibarat 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 ibarat ini.
Ganti bab Use As menjadi Swap Area. Jika sudah pilih Done Setting Up New Partition.
Lakukan hal yang sama untuk membuat partisi /. Bedanya yaitu pada bab 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 ibarat diatas. Perbedaannya pada bab Partition Settings, kalian pilih Use 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 ibarat berikut. Setelah itu tekan Enter pada Finish partitioning and write changes to disk.
Terakhir pilih Yes.
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 bagan jaringan milik kalian. Kalau topologi jaringan saya yaitu sebagai berikut :
2. Aktifkan user root biar nanti tidak terlalu ribet menggunakan sudo di setiap perintah yang kalian lakukan. Langkah ini bahwasanya opsional saja, karena walaupun tidak mengaktifkan user root, kalian masih bisa melaksanakan semua langkah-langkah instalasi Squid Lusca-nya.
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 biar nanti tidak terlalu ribet menggunakan sudo di setiap perintah yang kalian lakukan. Langkah ini bahwasanya opsional saja, karena walaupun tidak mengaktifkan user root, kalian masih bisa melaksanakan semua langkah-langkah instalasi Squid Lusca-nya.
Untuk mengaktifkan user root silahkan eksekusi perintah berikut :
# passwd
Lalu masukkan password gres untuk user root.
3. Langkah kedua, kalian perlu menaikkan jumlah maksimal file descriptor yang bisa dibaca oleh sistem. Ini sangat diharapkan 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 bab 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 biar performa squid semakin baik :
# nano /etc/modules
Pada baris paling bawah tambahkan :
ip_conntrack
Simpan kalau sudah.
5. Langkah berikutnya yaitu menginstall paket-paket yang diharapkan 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 unduh juga paket Luscanya :
# wget http://backcode.googlecode.com/files/LUSCA_HEAD-r14809-patch.tar.bz2
7. Setelah proses unduh selesai, ekstraklah file tersebut :
# tar -xvjf LUSCA_HEAD-r14809-patch.tar.bz2
8. Sekarang gres kita masuk ke dalam tahap pengkompilan. Sebelum itu, kalian harus mengetahui terlebih dahulu arahan CFLAGS dari tipe prosesor kalian. Karena arahan CFLAGS ini kita perlukan untuk proses pengkompilan.
Ketahui terlebih dahulu tipe prosesor kalian dengan mengetikkan perintah berikut :
# cat /proc/cpuinfo
Perhatikan bab yang kira-kira ada ibarat 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, gres 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 jasus Xeon.
Dari situ kalian bisa dapatkan arahan yang kira-kira ibarat 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-pthreads --with-aio --with-dl --enable-storeio=aufs,null \
--enable-removal-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 arahan CFLAGS milik kalian masing-masing.
Jika tidak ada pesan error, maka hingga tahap ini squid lusca kalian sudah berhasil terinstall.
10. Selanjutnya kalian harus mengganti hak saluran partisi penyimpanan cache kalian biar menjadi kepemilikan user proxy 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
Jangan lupa ganti kepemilikannya menjadi milik user proxy dan grup proxy juga :
# 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
13. Ekstrak dan kopikan file-file konfigurasi tersebut ke direktori /etc/squid :
# tar -xvf fileconfig.tar.gz
# cp fileconf/* /etc/squid
14. Beri hak saluran eksekusi untuk semua file berekstensi .pl pada direktori /etc/squid :
# 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, ibarat subnet klien, nama disk cache, besar RAM, maupun ukuran harddisk disk cache, maka ada beberapa file yang perlu kalian edit.
Merubah subnet klien
Sesuai dengan topologi jaringan saya berikan diatas, subnet untuk klien saya yaitu 192.168.1.0/24. Jika kalian ingin merubahnya sehubungan dengan perbedaan topologi jaringan, maka edit file acl.conf :
# nano /etc/squid/acl.conf
Cari baris acl localnet src 192.168.1.0/24 (Gunakan akomodasi search dengan menekan tombol CTRL + W). Lalu ganti bab 192.168.1.0/24 sesuai dengan yang kalian inginkan. Jika sudah simpan dan tutup file tersebut.
Merubah nama disk cache
Pada artikel ini, disk cache yang saya buat bernama /proxy. Apabila kalian menggunakan nama lain, silahkan edit file squid.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 yaitu 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.
Kira-kira cara menghitungnya ibarat ini : 16000000/13/256/256 X 2 = 37.5. Dibulatkan saja menjadi 37.
Mengubah ukuran RAM
RAM yang saya gunakan pada artikel ini yaitu 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.
Testing
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 kawasan 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 bisa 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
5. Terakhir, pantau log file dari squid dengan perintah berikut :
# tail -f /var/log/squid/access.log | ccze
Membuat Autostart Squid
Agar service squid eksklusif berjalan setiap komputer menyala, maka kalian harus menambahkan script autostart gres 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 dikala kalian mengetikkan perintah diatas, ternyata malah ibarat membuat file baru.
Kemudian eksekusi dua perintah berikut untuk menunjukkan hak saluran 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
Masukkan script ini :
service squid3 stop
Simpan dan tutup file tersebut.
Memonitor Kinerja Squid Lusca dengan Squid Analyzer
Apabila kita hanya melihat file log milik squid secara mentah, rasanya kita agak kurang paham dan kurang bisa melihat statistiknya secara lengkap. Oleh karena itu kita memerlukan tools suplemen biar kita bisa memantau file log squid dengan tampilan yang lebih user friendly. Kalian bisa membaca artikel milik saya wacana cara memonitor kinerja Squid Lusca dengan Squid Analyzer.
Komentar Pribadi
Seluruh konfigurasi diatas sudah sering saya coba di beberapa PC dengan spek yang berbeda, ibarat Intel Pentium 4, Dual Core, Core 2 Duo, hingga Intel Core i3 dan Intel Xeon. Untuk ngehit situs-situs HTTP dan game-game HTTP ibarat game facebook dan friv.com sangat lancar. Untuk ngehit youtube pun lancar. Yang kurang yaitu tidak seluruh update patch game online bisa ngehit (saya gres mencoba yang bisa terHIT hanya beberapa game gemscool saja, sedangkan untuk game online selain itu tidak bisa), serta tidak bisa ngehit speedtest. Sehingga dikala di test di speedtest, hanya bisa menampilkan angka yang sesuai dengan bandwidth asli.
Saya masih dalam tahap mengoprek-oprek lagi biar kekurangan yang saya alami diatas biar bisa segera teratasi. Apabila ada diantara kalian yang mempunyai script yang lebih mantap dari milik saya, yang mungkin bisa ngehit semua patch game online dan speedtest monggo dishare saja dengan mengomentari artikel ini.
0 Response to "Instalasi Squid Lusca Proxy di Ubuntu Server 12.04 LTS"
Posting Komentar