Proxy server merupakan aplikasi server yang memiliki banyak fungsi (multifungsi) seperti memblok situs-situs yang dimasukkan ke dalam acl (terutama situs-situs porno), namun kegunaan utama dari proxy server adalah kemampuannya untuk menyimpan halaman-halaman website yang telah diakses oleh client ke dalam tempat penyimpanan khusus yang disebut proxy cache, contohnya jika anda mencoba mengakses situs seperti www.kaskus.com, proxy server akan “menangkap” terlebih dahulu request dari komputer anda lalu memeriksa apakah halaman website www.kaskus.com tersimpan dalam proxy cache atau tidak, jika ternyata ada maka proxy akan untuk sementara memblok akses komputer anda ke internet dan mengirimkan halaman web yang bersangkutan ke komputer anda, namun anda tidak akan menyadari proses ini sehingga anda merasa seolah-olah halaman web yang anda buka anda dapatkan langsung dari internet, proses ini sangat menguntungkan untuk lembaga atau instansi tempat anda membuka internet karena secara langsung akan menghemat bandwidth antara jaringan internal dengan jaringan internet, tetapi apabila halaman web yang diminta tidak terdaftar di dalam proxy cache maka proxy akan langsung meneruskan request dari komputer anda ke internet setelah ada balasan maka proxy server akan menyimpan halaman website yang tidak terdaftar tersebut ke dalam proxy cache sebelum diteruskan ke komputer anda sehingga jika sewaktu-waktu ada request terhadap halaman web tersebut maka proxy server telah mempunyai “koleksinya”. Dalam dunia *nix (Unix dan Linux) aplikasi yang paling populer untuk proxy server adalah squid. Untuk menginstall squid masukkan perintah
apt-get install squid
32
Jika tidak ada pesan error berarti anda telah berhasil menginstal squid.
Selanjutnya adalah konfigurasi paket squid, file konfigurasi dapat anda temukan pada direktori /etc/squid lalu edit file squid.conf tapi sebelum mengkonfigurasi proxy server sebaiknya anda menghentikan dulu proses squid dengan perintah
/etc/init.d/squid stop
Gambar 36. Mengehentikan squid
Setelah anda menghentikan squid maka kini saatnya untuk melakukan konfigurasi pada file squid.conf dalam direktori /etc/squid, namun sebelum anda mengkonfigurasi file tersebut perlu anda ketahui file squid.conf termasuk yang sulti untuk dikonfigurasi, ini bukan disebabkan karena kerumitannya tetapi karena begitu banyaknya isi file tersebut (terdapat 4348 baris script) sehingga anda perlu mencari satu persatu script yang akan diedit.
33
Pertama carilah baris http_port 3128 lalu tambahkan script transparent setelahnya sehingga client secara otomatis akan menggunakan port proxy server anda secara default.
Gambar 37. Menambahkan option transparent
Kemudian carilah script cache_mem lalu masukkan jumlah memori fisik (RAM) yang dipakai oleh squid (defaultnya adalah ¼ dari jumlah memori fisik anda).
34
gambar 39. Jumlah memori yang akan digunakan cache (dalam persen)
35
Gambar 41. Lokasi dari proxy cache
36
Setelah anda menghilangkan tanda pagar sesuai dengan instruksi gambar sekarang anda bukan lagi menghapus tetapi menambahkan option.
Gambar 43. Option untuk dns_nameservers sebelum di edit
37
Gambar 45. Memasukkan aturan acl
ACL (Access Control List) merupakan salah satu option dari squid untuk menentukan izin akses terhadap website, IP address, dan kata-kata, script pada gambar 45 berarti.
acl url dstdomain “/etc/squid/url” daftar acl yang berisi nama-nama situs yang anda masukkan (tersimpan dalam file url dalam direktori /etc/squid), di script ini tulisan url berarti nama dari acl tersebut.
no_cache deny url tidak ada cache yang memblok acl yang bernama url.
http_access deny url perintah bagi squid untuk langsung memblokir nama-nama situs yang terdaftar di dalam file /etc/squid/url.
Jika anda ingin memblok IP address masukkan saja option acl dengan deskripsi sebagai berikut acl [nama_acl] src IP address/prefix
Contoh
acl ip_dilarang src 192.168.1.1/24
38 acl [nama_acl] url_regex -i “lokasi file”
contoh
acl kata_dilarang url_regex –i “/etc/squid/kata_dilarang” berikutnya cari INSERT YOUR OWN RULE
Gambar 46. INSERT YOUR OWN RULE sebelum di edit
Satu hal yang perlu di ingat pada saat memasukkan network jangan pernah menulis host. Contoh = 192.168.1.1/24
192.168.1.1 adalah host, maka secara otomatis proxy akan menolak untuk “bekerjasama” Contoh Penulisan yang Benar =
192.168.1.0/24 10.10.11.0/26
39
Gambar 47. INSERT YOUR OWN RULE setelah di edit
Pada gambar di atas ada sedikit perbedaan karena tidak seperti biasanya kita harus menambahkan tanda pagar hal ini agar option http_access deny all tidak berlaku atau tidak dibaca oleh squid karena bila tidak diberi tanda pagar maka squid akan memblok semua akses ke jaringan anda.
Berikutnya cari tag always_direct lalu ubah option none dibawahnya menjadi always_direct allow all
40
Gambar 48. Tag always_direct
41
Gambar 50. Option always_direct setelah dirubah
Setelah selesai save konfigurasi anda dengan menekan tombol Esc:wq lalu buat file url dalam direktori /etc/squid dengan menggunakan perintah vim lalu masukkan daftar situs yang akan diblokir oleh squid.
42
Gambar 51. Daftar situs yang diblokir oleh squid
Setelah selesai memasukkan daftar situs yang akan diblokir simpan dan keluar dari proxy anda, lalu start squid anda dengan perintah
/etc/init.d/squid start
Aktifkan cache dengan perintah squid –z
Reconfigure squid dengan perintah squid –k reconfigure
berikutnya agar proxy server dapat mengawasi aktifitas jaringan anda secara otomatis masukkan aturan iptables sehingga semua lalu lintas jaringan yang menggunakan port 80 akan segera di redirect ke port 3128 dengan perintah
iptables-t nat –A PREROUTING –i eth0 –p tcp –-dport 80 –j REDIRECT –to-ports 3128 iptables-save
43 Tes konfigurasi iptables dengan perintah
iptables –t nat –nvL
Gambar 52. Output iptables untuk redirect port
Berikutnya tes keberhasilan proxy server anda melalui web browser dengan mengetik nama situs yang anda blokir tadi
44
Gambar 53. Tampilan dari situs yang di blokir
Perlu digarisbawahi jika akses internet ke jaringan anda terputus atau memang tidak ada maka squid tidak akan menampilkan pesan seperti diatas karena tidak ada balasan dari dns server milik situs yang anda blokir sehingga web browser hanya akan menampilkan pesan tidak ada koneksi. Kedua, squid yang dikonfigurasi secara permanen akan mendaftar semua aktifitas yang melalui port 80 dan 3128 ke dalam file /var/log/squid/access.log untuk melihat isi dari access.log gunakan perintah
tail –f /var/log/squid/access.log
tail –f bersifat monitoring (seperti ping) sehingga anda tidak dapat mengetikkan perintah jika menjalankan tail –f tekan tombol CTRL+C untuk keluar dari tail –f
45
Gambar 54. Laporan dari squid
Yang ketiga adalah aturan iptables anda bersifat temporary artinya akan hilang jika komputer anda telah direstart, untuk membuat iptables anda permanen ikuti langkah berikut
Masuk ke dalam direktori mana saja, misalnya /home/tkj Buat file dengan nama apapun, contoh transparent
46
Gambar 55. Script yang dimasukkan ke dalam file transparent
Simpan script anda dan keluar dari file transparent, setelah itu ubah permission file transparent menjadi executeable dengan perintah
chmod 755 transparent
setelah itu masuk ke direktori /etc lalu edit file rc.local masukkan lokasi file transparent ke dalam file rc.local
47
Gambar 56. rc.local setelah di edit
Untuk mengetes keberhasilan dari bash scripting anda cobalah merestart komputer anda, setelah komputer di restart check pada terminal anda status iptables dengan perintah.
iptables-save
iptables –t nat –nvL
Jika muncul informasi seperti yang ada pada gambar 52 berarti anda berhasil membuat aturan iptables anda menjadi permanen.
48