Setting Local Cache Proxy On UBUNTU Using Squid
Selama ini untuk melakukan aktivitas internetan, saya selalu menggunakan dua browser favorit yaitu Mozilla Firefox dan Opera. Kenapa perlu dua browser, tentunya karena menurut saya diantara keduanya memiliki keunggulan masing-masing yang saling melengkapi. Namun akhir-akhir ini saya sering kesal karena kualitas koneksi internet yang saya pakai sedang mengalamai masalah, super lambat.
Lantas apa hubungannya dengan squid? Beberapa diantara kita mungkin sudah mahfum bahwa untuk mensiasati lambatnya koneksi internet, kita bisa memanfaatkan fitur web cache yang ada pada browser. Jadi untuk bagian-bagian tertentu dari halaman web yang pernah kita kunjungi, browser nggak perlu lagi mengambil dari server, cukup dari simpanannya saja.
Oke masalah sedikit tersiasati, namun itu hanya berlaku untuk browser yang sama. Padahal saya punya dua browser favorit, dan saya ingin halaman yang pernah dikunjungi Firefox dan tersimpan dalam cache juga bisa dimanfaatkan oleh Opera dan begitu pula sebaliknya. Nah akhirnya saya mulai melirik untuk membuat local web cache server pada komputer saya, dan squidlah yang menjadi pilihan.
Berikut ini adalah langkah-langkah ngoprek squid untuk dijadikan local cache server:
1. Instalasi squid.
Berhubung saya pakai distro keturunan debian maka dapat dilakukan dengan mengetikkan perintah berikut pada command prompt:
$ sudo apt-get install squid
2. Membuat file log dan direktory untuk cache.
File log yang dimaksud adalah untuk cache_log dan access_log. Cache_log berfungsi untuk mencatat penulisan cache pada cache direktory sedangkan access log akan berisi daftar trafik yang pernah terjadi melalui port squid.
Direktory cache adalah tempat penyimpanan cache website yang pernah dikunjungi. Ketiga item tersebut harus menjadi hak milik cache_efective_user, dan supaya gampang kita sebut saja squid sebagai usernya.
$ mkdir /usr/local/squid
$ mkdir /usr/local/squid/cache
$ touch /usr/local/squid/cache.log
$ touch /usr/local/squid/access.log
$ sudo adduser squid
$ chown -Rf squid.squid /usr/local/squid
3. Mengkonfigurasi squid
Supaya bisa bekerja sesuai dengan keinginan kita harus memodifikasi isi dari squid.conf file. Biasanya setelah default install, file tersebut tersimpan di direktori /etc/squid/. Namun seandainya tidak ketemu, bisa menggunakan perintah berikut untuk mencarinya: sudo find / -name squid.conf
Saat pertama kali terinstall, squid akan memiliki sebuah default configuration file yang disertai coment-comment yang begitu buanyak, sehingga poin-poin konfigurasinya justru tersembunyi di dalam rimba coment tersebut. Jalankan perintah berikut untuk menghilangkan coment dan baris kosong pada default squid.conf file:
$ sudo chown squid.squid /var/spool/squid -Rf
$ sudo chown squid.squid -Rf /etc/squid
$ sudo -u squid mv /etc/squid/squid.conf /etc/squid/squid.conf.original
$ sudo -u squid touch /etc/squid/squid.conf
$ sudo -u squid cat /etc/squid/squid.conf.original | sed ‘/ *#/d; /^ *$/d’ > /etc/squid/squid.conf
Salah satu item yang perlu di-customize dari squid config file ini adalah variable yang berisi file log dan direktory cache sehingga merujuk pada yang telah kita siapkan sebelumnya.
cache_dir ufs /usr/local/squid/cache 1024 16 256
access_log /usr/local/squid/access.log
cache_log /usr/local/squid/cache.log
cache_store_log none
Kemudian untuk membuat squid sebagai chache server, option berikut yang perlu ditambahkan :
http_port 3128 transparent
cache_mem 1024 MB
cache_swap_low 94
cache_swap_high 96
maximum_object_size 16384 KB
minimum_object_size 4 KB
maximum_object_size_in_memory 2048 KB
fqdncache_size 1024
cache_replacement_policy heap GDSF
memory_replacement_policy heap GDSF
visible_hostname localhost
cache_mgr admin@localhost
cache_effective_user squid
cache_effective_group squid
Berikut ini adalah contoh configuration file yang saya gunakan.
4. Membuat struktur cache directory.
Dengan menjalankan perintah berikut, squid akan membentuk struktur direktori untuk penyimpanan cachenya:
$ sudo -u squid squid –z
5. Test squid
Jalankah perintah berikut untuk menguji coba konfigurasi squid yang telah dimodifikasi:
$ squid –d 1 -D
Kalau tidak ada error maka configuration file yang kita buat sudah ok. Dan jika ternyata masih ada error maka setelah melakukan perubahan pada squid.conf, jalankan perintah squid –k reconfigure untuk memerintahkan squid membaca ulang squid conf yang telah diedit.
6. Menjalankan squid
Untuk menjalankan squid, gunakan perintah berikut ini:
$ squid -sYD
Setelah langkah langkah diatas sukses, selanjutnya kita perlu mensetting browser supaya menggunakan proxy pada localhost port 3128.
Selama ini untuk melakukan aktivitas internetan, saya selalu menggunakan dua browser favorit yaitu Mozilla Firefox dan Opera. Kenapa perlu dua browser, tentunya karena menurut saya diantara keduanya memiliki keunggulan masing-masing yang saling melengkapi. Namun akhir-akhir ini saya sering kesal karena kualitas koneksi internet yang saya pakai sedang mengalamai masalah, super lambat.
Lantas apa hubungannya dengan squid? Beberapa diantara kita mungkin sudah mahfum bahwa untuk mensiasati lambatnya koneksi internet, kita bisa memanfaatkan fitur web cache yang ada pada browser. Jadi untuk bagian-bagian tertentu dari halaman web yang pernah kita kunjungi, browser nggak perlu lagi mengambil dari server, cukup dari simpanannya saja.
Oke masalah sedikit tersiasati, namun itu hanya berlaku untuk browser yang sama. Padahal saya punya dua browser favorit, dan saya ingin halaman yang pernah dikunjungi Firefox dan tersimpan dalam cache juga bisa dimanfaatkan oleh Opera dan begitu pula sebaliknya. Nah akhirnya saya mulai melirik untuk membuat local web cache server pada komputer saya, dan squidlah yang menjadi pilihan.
Berikut ini adalah langkah-langkah ngoprek squid untuk dijadikan local cache server:
1. Instalasi squid.
Berhubung saya pakai distro keturunan debian maka dapat dilakukan dengan mengetikkan perintah berikut pada command prompt:
$ sudo apt-get install squid
2. Membuat file log dan direktory untuk cache.
File log yang dimaksud adalah untuk cache_log dan access_log. Cache_log berfungsi untuk mencatat penulisan cache pada cache direktory sedangkan access log akan berisi daftar trafik yang pernah terjadi melalui port squid.
Direktory cache adalah tempat penyimpanan cache website yang pernah dikunjungi. Ketiga item tersebut harus menjadi hak milik cache_efective_user, dan supaya gampang kita sebut saja squid sebagai usernya.
$ mkdir /usr/local/squid
$ mkdir /usr/local/squid/cache
$ touch /usr/local/squid/cache.log
$ touch /usr/local/squid/access.log
$ sudo adduser squid
$ chown -Rf squid.squid /usr/local/squid
3. Mengkonfigurasi squid
Supaya bisa bekerja sesuai dengan keinginan kita harus memodifikasi isi dari squid.conf file. Biasanya setelah default install, file tersebut tersimpan di direktori /etc/squid/. Namun seandainya tidak ketemu, bisa menggunakan perintah berikut untuk mencarinya: sudo find / -name squid.conf
Saat pertama kali terinstall, squid akan memiliki sebuah default configuration file yang disertai coment-comment yang begitu buanyak, sehingga poin-poin konfigurasinya justru tersembunyi di dalam rimba coment tersebut. Jalankan perintah berikut untuk menghilangkan coment dan baris kosong pada default squid.conf file:
$ sudo chown squid.squid /var/spool/squid -Rf
$ sudo chown squid.squid -Rf /etc/squid
$ sudo -u squid mv /etc/squid/squid.conf /etc/squid/squid.conf.original
$ sudo -u squid touch /etc/squid/squid.conf
$ sudo -u squid cat /etc/squid/squid.conf.original | sed ‘/ *#/d; /^ *$/d’ > /etc/squid/squid.conf
Salah satu item yang perlu di-customize dari squid config file ini adalah variable yang berisi file log dan direktory cache sehingga merujuk pada yang telah kita siapkan sebelumnya.
cache_dir ufs /usr/local/squid/cache 1024 16 256
access_log /usr/local/squid/access.log
cache_log /usr/local/squid/cache.log
cache_store_log none
Kemudian untuk membuat squid sebagai chache server, option berikut yang perlu ditambahkan :
http_port 3128 transparent
cache_mem 1024 MB
cache_swap_low 94
cache_swap_high 96
maximum_object_size 16384 KB
minimum_object_size 4 KB
maximum_object_size_in_memory 2048 KB
fqdncache_size 1024
cache_replacement_policy heap GDSF
memory_replacement_policy heap GDSF
visible_hostname localhost
cache_mgr admin@localhost
cache_effective_user squid
cache_effective_group squid
Berikut ini adalah contoh configuration file yang saya gunakan.
4. Membuat struktur cache directory.
Dengan menjalankan perintah berikut, squid akan membentuk struktur direktori untuk penyimpanan cachenya:
$ sudo -u squid squid –z
5. Test squid
Jalankah perintah berikut untuk menguji coba konfigurasi squid yang telah dimodifikasi:
$ squid –d 1 -D
Kalau tidak ada error maka configuration file yang kita buat sudah ok. Dan jika ternyata masih ada error maka setelah melakukan perubahan pada squid.conf, jalankan perintah squid –k reconfigure untuk memerintahkan squid membaca ulang squid conf yang telah diedit.
6. Menjalankan squid
Untuk menjalankan squid, gunakan perintah berikut ini:
$ squid -sYD
Setelah langkah langkah diatas sukses, selanjutnya kita perlu mensetting browser supaya menggunakan proxy pada localhost port 3128.
Komentar
Posting Komentar