Thursday, April 26, 2012

Proxy Squid, Instalasi beserta Konfigurasinya

Proxy server adalah sebuah komputer server atau program komputer yang dapat bertindak sebagai komputer lainnya untuk melakukan request terhadap content dari Internet atau intranet.

Proxy Server bertindak sebagai gateway terhadap dunia ini Internet untuk setiap komputer klien. Proxy server tidak terlihat oleh komputer klien: seorang pengguna yang berinteraksi dengan Internet melalui sebuah proxy server tidak akan mengetahui bahwa sebuah proxy server sedang menangani request yang dilakukannya. Web server yang menerima request dari proxy server akan menginterpretasikan request-request tersebut seolah-olah request itu datang secara langsung dari komputer klien, bukan dari proxy server.

Proxy server juga dapat digunakan untuk mengamankan jaringan pribadi yang dihubungkan ke sebuah jaringan publik (seperti halnya Internet). Proxy server memiliki lebih banyak fungsi daripada router yang memiliki fitur packet filtering karena memang proxy server beroperasi pada level yang lebih tinggi dan memiliki kontrol yang lebih menyeluruh terhadap akses jaringan. Proxy server yang berfungsi sebagai sebuah “agen keamanan” untuk sebuah jaringan pribadi, umumnya dikenal sebagai firewall.

Squid adalah proxy server / cache server yang dinilai stabil dalam menangani request. Dalam artikel ini akan dijelaskan mengenai instalasi dan konfigurasi squid pada ubuntu server.

1
# apt-get install squid

Setelah instalasi selesai dan tidak terdapat kesalahan, langkah berikutnya adalah mengatur konfigurasi squid, bukalah file /etc/squid.conf dengan editor teks favorit anda (vi, pico, dll), file ini merupakan file konfigurasi squid.

Carilah baris yang berisi perintah berikut :

1
#http_port 3128

Perintah ini akan membuat proxy HTTP menggunakan port 3128 yang merupakan port default untuk squid. Aktifkan dengan menghilangkan tanda #. Anda dapat membuat nilai port HTTP proxy ini sesuai dengan selera anda, tetapi jangan arahkan ke port 80, terutama jika anda juga menjalankan Web Server, karena Web Server juga memakai port tersebut.

Langkah berikutnya, carilah baris perintah berikut :

1
#cache_mem 8 MB

Perintah tersebut digunakan untuk membatasi banyaknya memori komputer yang akan digunakan squid untuk menyimpan sementara obyek-obyek yang di cache. Batasan ini tidak ketat, suatu waktu jika squid membutuhkan memori lebih, dia dapat menggandakan memori yang dipakainya. Aktifkan baris ini dan ubahlah ukuran cache ini menjadi sebanyak yang anda inginkan, yang harus anda pertimbangkan adalah banyaknya memori yang dimiliki oleh komputer anda.

Berikutnya, carilah baris yang berisi perintah berikut :

1
2
3
# LOGFILE PATHNAMES & CACHE DIRECTORIES
# ————————————-

Setting berikut ini digunakan untuk mendefinisikan alokasi penyimpanan web cache kita. Setting yang pertama adalah :

1
#cache_dir /var/squid/cache 100 16 256

Nilai yang ada diatas adalah nilai default squid, jika anda ingin merubahnya maka aktifkan perintah ini.

Parameter pertama /var/squid/cache adalah nama direktori tempat kita akan menyimpan file-file cache. Anda dapat mengubah parameter ini ke direktori manapun, tetapi yang harus diperhatikan squid tidak akan menciptakan direktori baru, jadi bila parameter ini akan diubah, pastikan direktori tujuannya sudah ada dan squid mempunyai hak akses untukmenulis pada direktori tersebut.

Parameter selanjutnya, yang bernilai 100 adalah banyaknya ruang pada hard disk (dengan satuan Mega Byte) yang akan digunakan squid untuk menyimpan file-file cache nya. Ubahlah sesuai dengan kebutuhan anda.

Parameter selanjutnya, disebut dengan Level-1, adalah banyaknya direktori yang akan dibuat oleh squid dalam direktori cache nya. Sebaiknya penulis menyarankan untuk tidak mengubah parameter ini.

Parameter terakhir, yang disebut dengan Level-2, adalah banyaknya direktori level kedua, yaitu direktori yang dibuat di dalam tiap direktori level pertama diatas.

Langkah berikutnya, carilah perintah berikut :

1
2
3
# ACCESS CONTROLS
# ——————–

Sebetulnya ini adalah topik yang besar, dan sudah saya rencanakan untuk membahasnya secara terpisah. Tapi karena untuk tahap awal, kita harus mengijinkan akses dari LAN agar bisa menggunakan proxy, kita bahas sekilas saja.

Yang perlu Anda ketahui, konfigurasi squid dibaca dari atas ke bawah. Artinya, yang pertama kalicocok, itulah yang menang. Selalu ingat konsep dasar ini, karena akan sangat penting untuk memahami mengapa konfigurasi squid Anda tidak bekerja dengan seharusnya.

Ok, sekarang kita harus membuat acl baru untuk mengijinkan semua IP di LAN Anda bisa menggunakan squid proxy yang baru diinstal.

Misal, Anda memiliki dua LAN, 192.168.1.0/24 dan 192.168.2.0/24. Maka konfigurasinya,

1
2
3
acl jaringan_saya src 192.168.1.0/24 192.168.2.0/24
http_access allow jaringan_saya

Jika Anda menginginkan hanya IP tertentu saja, bukan satu network, Anda bisa juga menuliskannya seperti di bawah ini.

1
2
3
4
5
6
7
acl jaringan_saya src 192.168.1.0/24 192.168.2.0/24
http_access allow jaringan_saya
acl kantor_cabang src 192.168.5.5
http_access allow kantor_cabang

Sekarang IP 192.168.5.5 yang ada di kantor cabang, bisa juga menggunakan proxy yang baru Anda buat.

Baris perintah berikut ini digunakan untuk mendefinisikan daftar hak akses dalam jaringan anda, squid menyebutnya dengan Access Control Lists (ACL). Anda dapat mendefinisikan beberapa ACL disini. Dalam bagian access controls ini, carilah baris perintah berikut :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#Default configuration:
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR
# CLIENTS
#
http_access deny all

Yang perlu anda lakukan disini adalah mendefinisikan ACL kita sendiri, kita non aktifkan perintah terakhir dan tambahkan satu baris perintah berikut :

1
http_access allow all

Sehingga akan menjadi seperti ini :

1
2
3
4
5
6
7
8
9
10
11
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR
# CLIENTS
#
# http_access deny all
http_access allow all

sampai disini squid anda sudah selesai di setting, langkah berikutnya adalah untuk memastikan bahwa squid berjalan setiap kali kita jalankan Linux.

Jika anda menggunakan Red Hat Linux, anda harus login sebagai root, kemudian jalankan perintah setup. Dari situ masuklah ke menu System Service dan aktifkan pilihan squid.

Jika anda menggunakan SuSe, jalankan YaST dan masuklah menu System Administration kemudian pilih Change Config File dan carilah kata-kata START SQUID ubahlah nilainya dari NO ke YES.

Dengan demikian maka tiap kali anda masuk ke Linux, squid secara otomatis akan dijalankan.

Sebelum squid dapat berjalan, anda harus menciptakan direktori swap. Lakukanlah dengan menjalankan perintah :

1
#squid -z

Perintah ini hanya perlu dijalankan satu kali saja ketika squid pertama kali akan dijalankan pada komputer anda.

Untuk menjalankan squid tanpa merestart komputer, gunakan perintah :

1
# /etc/init.d/squid start

Untuk meminimalkan downtime squid, gunakan perintah berikut agar squid membaca ulang file konfigurasi dan menerapkannya.

1
# squid -k reconfigure

No comments:

Post a Comment