PENGGUNAAN CONTENT FILTERING
DAN DYNAMIC HOST CONFIGURATION
PROTOCOL DALAM PROXY SERVER
SQUID DI PT BANK INA PERDANA
Achmad Fadillah
Jurusan Teknik Informatika, School of Computer Science, Binus University Jl. Kebon Jeruk Raya No. 27, Kebon Jeruk, Jakarta Barat 11530
Telp. +62-21-53696969 [email protected]
Raziv Herman Diputra
Jurusan Teknik Informatika, School of Computer Science, Binus University Jl. Kebon Jeruk Raya No. 27, Kebon Jeruk, Jakarta Barat 11530
Telp. +62-21-53696969 [email protected]
ABSTRAK
Tujuan penelitian ialah menganalisis dan merancang sebuah sistem yang secara
otomatis akan membatasi hak pengguna dalam mengakses website dan jumlah
perangkat yang digunakan untuk mengakses jaringan internet di PT Bank Ina
Perdana. Hal ini bertujuan agar bandwidth akan lebih efisien dan network
administrator di perusahaan akan lebih mudah melakukan monitoring jaringan.
Metode penelitian yang digunakan meliputi studi kepustakaan mengenai topik yang
dibahas dalam penelitian dan pengumpulan data menggunakan teknik wawancara
dan teknik observasi. Hasil yang dicapai ialah simulasi rancangan content filtering
dengan metode Access Control List yang dapat melakukan filtering terhadap website
yang ingin dikunjungi dan Dynamic Host Configuration Protocol (DHCP) dengan
metode static allocation yang dapat membatasi jumlah perangkat yang digunakan
untuk mengakses jaringan internet dalam proxy server squid. Simpulan dari
penelitian ini adalah dengan digunakannya sistem content filtering dan DHCP maka
karyawan di perusahaan tersebut hanya dapat mengakses website yang diizinkan
oleh perusahaan dan menggunakan perangkat yang telah didaftarkan terlebih
dahulu kepada network administrator.
PENDAHULUAN
Teknologi informasi dan komunikasi saat ini telah menjadi satu hal yang sangat penting bagi kehidupan manusia. Di antara teknologi ini yang banyak digunakan saat ini adalah internet. Berdasarkan data pada tahun 2012, pengguna internet di Indonesia mencapai 55 juta jiwa atau sekitar 22.1 persen dari jumlah penduduk Indonesia (www.internetworldstats.com/stats3.htm, 3 Oktober 2013). Jumlah ini diperkirakan akan terus meningkat seiring dengan peningkatan jumlah pengguna
smartphone yang operasinya melibatkan pemakaian internet. Peningkatan penjualan smartphone pada
kuarter kedua tahun 2013 mencapai 225 juta unit, atau naik 46,5 persen dari kuarter kedua pada tahun 20012 (www.gartner.com/newsroom/id/2573415, 3 Oktober 2013). Di sebuah organisasi atau perusahaan, internet merupakan sebuah sarana yang umum digunakan sebagai referensi atau sumber informasi untuk menunjang pekerjaan tiap individu. Tetapi penggunaan internet yang tidak dibatasi dapat membuat kinerja di organisasi atau perusahaan menurun yang disebabkan oleh tidak tepatnya penggunaan internet disaat waktu kerja berlangsung. Untuk itu, perlu adanya sebuah sistem yang dapat mengawasi penggunaan jaringan internet agar tetap sesuai dengan aturan dan norma yang telah ditetapkan. Seperti penggunaan internet di sebuah perusahaan dilarang untuk mengakses situs-situs yang memiliki konten pornografi atau kebijakan di perusahaan tersebut melarang karyawannya untuk mengakses social media pada saat jam operasional kantor melalui fasilitas internet di perusahaan tersebut maka sistem yang diterapkan harus dapat membatasi dan mengontrol penggunaannya. Rumusan masalah yang terjadi adalah bagaimana membangun sebuah sistem yang dapaet megnontrol
website yang diakses oleh pengguna internet di PT Bank Ina Perdana. Dengan adanya sistem ini
diharapkan mampu meningkatkan kinerja karyawan dan menghemat pemakaian bandwidth di perusahaan tersebut.
Ruang lingkup penelitian ini meliputi perancangan topologi baru yang dilengkapi dengan perangkat
proxy server dan melakukan konfigurasi content filtering dan DHCP sebagai fitur dari proxy server.
Untuk membantu penelitian ini, maka digunakan beberapa teori yang terkait, yaitu:
Proxy Server
Server merupakan sebuah komputer yang menyediakan layanan untuk komputer lain. Salah satu server yang sering digunakan adalah proxy server. Menurut Cartealy (2013:143), proxy server
merupakan sebuah server yang berfungsi sebagai perantara antara komputer klien dengan server lain. Hal ini menyebabkan semua request yang datang dari LAN atau komputer klien akan akan masuk ke dalam proxy server kemudian proxy server akan meneruskan request tersebut ke target server. Proses tersebut juga terjadi ketika adanya reply dari target server ke komputer klien. Tugas dari proxy server ini yaitu untuk memilih request yang dilakukan berdasarkan aturan-aturan yang dibuat dan mengizinkan proses komunikasi terjadi apabila request tersebut tidak melanggar aturan tersebut. Aturan-aturan ini biasanya berdasarkan alamat IP klien atau pun target server, protokol, dan web
content.
Access Control List
Access Control List (ACL) adalah sebuah metode yang dapat digunakan seorang network administrator untuk melakukan packet filtering. Dengan menerapkan ACL ini maka network administrator dapat menentukan paket-paket yang dapat dilalui melalui proxy server. Dalam squid,
ACL akan dikombinasikan penggunaannya menggunakan perintah http_access untuk menentukan paket-paket tersebut. Dalam penulisannya, ACL dalam squid harus memiliki nama dan tipe yang diikuti dengan value (Saini, 2011:39). Untuk setiap value dalam ACL dapat dituliskan langsung setelah penulisan tipe ACL atau squid dapat membacanya dalam sebuah file. Perlu diingat bahwa dalam file tersebut tiap satu baris mendefinisikan satu buah value. Berikut adalah beberapa tipe dari ACL yang digunakan dalam penelitian ini:
Tabel 1 – Tipe ACL dalam Squid
(sumber: http://wiki.squid-cache.org/SquidFaq/SquidAcl)
Tipe ACL Keterangan
Src Mendefinisikan sumber alamat IP
Dst Mendefinisikan alamat IP yang dituju
Dstdomain Mendefinisikan domain yang dituju
Time Mendefinisikan waktu dan hari
Url_regex Mendefinisikan regular expression
Setelah mendeklarasikan nama, tipe, dan value dari ACL, maka selanjutnya adalah mengombinasikan nama ACL tersebut dengan perintah atau directive yang menentukan apakah paket tersebut memiliki akses terhadap resource lainnya atau tidak. Salah satu directive dalam ACL dan yang digunakan dalam penelitian ini adalah HTTP access control atau dalam penulisannya menjadi http_access.
Directive ini digunakan untuk memberikan akses pada HTTP transaction melalui proxy server squid
(Saini, 2011:40). Penulisan directive ini diikuti dengan pilihan allow|deny kemudian nama ACL yang telah dideklarasikan sebelumnya.
Dynamic Host Configuration Protocol
DHCP merupakan salah satu protokol yang termasuk dalam internet layer pada jaringan TCP/IP. Protokol ini umum digunakan oleh network administrator untuk memberikan IP address pada komputer klien secara otomatis. Informasi yang diberikan tidak hanya terbatas pada IP address saja, DNS server, default gateway, subnet mask merupakan contoh lain dari informasi yang dapat dikonfigurasi menggunakan DHCP. DHCP menggunakan model client-server, DHCP server bertugas sebagai penyedia informasi yang dibutuhkan, sedangkan DHCP client meminta informasi yang dibutuhkan.
Ada 4 cara mengenai pengalokasian alamat ini, yaitu static allocation, dynamic allocation, automatic
allocation, dan hybrid allocation (Droms dan Lemon, 2003:15). Dengan static allocation, DHCP server menyimpan informasi yang identik (misalkan MAC address) dengan komputer klien dan network administrator akan mengalokasikan alamat yang statis berdasarkan informasi yang dimiliki
tersebut. Sedangkan Dynamic allocation merupakan pengalokasian alamat kepada komputer klien secara otomatis berdasarkan alamat yang ada dalam pool (berisikan alamat-alamat yang dapat diberikan kepada klien) dalam jangka waktu tertentu. Pada Automatic allocation memiliki metode yang hampir sama dengan dynamic allocation, perbedaannya adalah dalam metode automatic
allocation alamat diberikan secara permanen. Untuk hybrid allocation, network administrator akan
membuat daftar klien-klien yang diperbolehkan untuk mendapatkan alamat dari DHCP server tanpa mengalokasikan alamatnya secara statis.
METODE PENELITIAN
Metode yang dilakukan dalam penelitian ini terdiri dari: 1. Studi Kepustakaan
Studi kepustakaan ini terkait dengan pencarian literatur ataupun referensi yang berhubungan dengan topik yang dibahas dalam penelitian ini, sehingga penelitian yang dilakukan sesuai dengan teori yang ada.
2. Pencarian Fakta
Dalam mencari data dan fakta yang dibutuhkan, penelitian ini menggunakan beberapa teknik, yaitu:
a. Teknik Wawancara
Wawancara merupakan teknik umum yang biasa dilakukan untuk mendapatkan informasi yang dibutuhkan. Wawancara adalah teknik mengumpulkan informasi dari individu yang bersangkutan dengan melakukan tatap muka secara langsung kepada narasumber. Penelitian ini melakukan wawancara kepada manager IT di PT Bank Ina Perdana.
b. Teknik Observasi
Observasi adalah teknik pencarian fakta atau informasi dengan melakukan studi, mengamati, dan menganalisis objek secara langsung. Teknik ini digunakan dalam penelitian untuk menganalisis jaringan yang sedang berjalan dan merancang topologi baru yang dibahas dalam penelitian ini.
HASIL DAN BAHASAN
Konfigurasi Ethernet
Dalam membuat rancangan dan konfigurasi untuk content filtering dan DHCP, hal pertama kali yang akan dilakukan adalah melakukan konfigurasi pada ethernet card yang terdapat dalam proxy server.
ethernet card yang terhubung ke jaringan LAN adalah ethernet 0 (eth0) dan ethernet card yang
terhubung ke modem speedy adalah ethernet 1 (eth1). Berikut ini adalah hasil konfigurasi yang dilakukan pada kedua ethernet tersebut:
Tabel 2 – Konfigurasi Ethernet
Konfigurasi Ethernet 0 Konfigurasi Ethernet 1
DEVICE=eth0 NETWORK=192.168.100.0 IPADDR=192.168.100.1 BROADCAST=192.168.100.255 NETMASK=255.255.255.0 HWADDR=A0:F3:C1:04:3F:E5 ONBOOT=yes DEVICE=eth1 NETWORK=10.1.103.0 IPADDR=10.1.103.99 BROADCAST=10.1.103.255 NETMASK=255.255.255.0 GATEWAY=10.1.103.1 HWADDR=00:30:67:8D:2B:F5 ONBOOT=yes
Konfigurasi ethernet ini dilakukan dalam file ifcfg-eth0 dan ifcfg-eth1 dalam folder
/etc/sysconfig/network-scripts/.
Konfigurasi DHCP
Setelah melakukan konfigurasi pada ethernet, maka tahapan selanjutnya adalah melakukan konfigurasi DHCP. Konfigurasi DHCP ini dilakukan untuk membatasi penggunaan perangkat yang digunakan untuk mengakses jaringan internet dan memudahkan kinerja network admin untuk mengalokasikan alamat IP ke komputer klien. Konfigurasi DHCP ini akan menggunakan metode
static allocation, artinya komputer klien akan mendapatkan alamat IP yang sama tiap terhubung ke
jaringan internet setelah mendaftarkan MAC Address mereka kepada network admin. Konfigurasi ini dilakukan dalam file dhcpd.conf di folder /etc/. Jika di dalam proxy server belum terdapat file
dhcpd.conf, maka artinya fitur DHCP belum terinstall di dalam proxy server. Untuk melakukan
instalasi DHCP diperlukan untuk memasukkan directive: yum install dhcp. Hasil konfigurasi yang dilakukan adalah sebagai berikut:
Untuk menguji apakah konfigurasi DHCP telah berhasil dilakukan perlu untuk memeriksa alamat IP pada komputer klien yang telah didaftarkan sebelumnya pada gambar x. Hasilnya adalah berikut:
Gambar x – Hasil Konfigurasi DHCP di Komputer Klien
Konfigurasi Content Filtering
Berikutnya yang akan dilakuakn adalah melakukan konfigurasi content filtering dengan metode ACL. Konfigurasi ini dilakukan di dalam aplikasi squid. Squid merupakan sebuah aplikasi atau layanan gratis yang bersifat proxy caching. Sebagai proxy, squid menjadi perantara antara klien dengan web
server. Sedangkan sebagai cache, squid akan menyimpan webpage atau web content yang diakses
untuk digunakan apabila klien meminta web content yang sama pada sesi berikutnya. Sebelum melakukan konfigurasi, maka squid perlu diinstall dengan menggunakan directive: yum install squid. Setelah instalasi berhasil, maka akan terlihat folder squid dalam folder /etc/. Di dalam folder squid tersebut terdapat file squid.conf tempat dilakukannya konfigurasi ACL untuk content filtering. Beberapa tahapan yang dilakukan untuk melakukan konfigrasi terhadap aplikasi squid adalah sebagai berikut:
1. Penentuan port squid
Directive yang digunakan untuk menentukan port dalam squid adalah dengan: http_port 192.168.100.1:3128 transparent. Directive ini menunjukkan port yang akan digunakan dalam
aplikasi squid adalah port 3128. Sedangkan transparent merupakan bentuk dari implementasi
proxy yang diterapkan dalam penelitian ini. Transparent proxy akan memudahkan kinerja divisi
IT karena jika transparent proxy diterapkan maka tidak dibutuhkan konfigurasi pada browser klien satu per satu.
2. Penentuan DNS squid
Directive yang digunakan untuk menentukan DNS dalam squid adalah: dns_nameservers 8.8.8.8
3. Penentuan user dan group squid
Penentuan user dan group squid menggunakan directive cache_effective_user dan
cache_effective_group adalah untuk mengganti User ID (UID) dan Group ID (GID) menjadi UID
dan GID yang diinginkan. Penelitian ini menggunakan proxy sebagai user dan group squid. Hasil konfigurasinya menjadi:
cache_effective_user proxy cache_effective_group proxy 4. Penentuan log location
Log location ini ditentukan dengan menggunakan directive di bawah ini diikuti dengan letak file log tersebut:
- Access log: cache_access_log var/log/squid/access.log. Access log ini digunakan untuk
mencatat seluruh informasi yang mengakses jaringan internet melewati proxy. Di dalamnya akan tercatat alamat IP dan tujuan webpage yang dikunjungi.
- Cache log: cache_log /var/log/squid/cache.log. Cache log ini digunakan untuk mencatat
semua kejadian yang terjadi pada aplikasi squid. Dalam log ini akan tercatat apabila adanya
error yang terjadi dalam proses debug.
5. Setelah konfigurasi di atas, selanjutnya perlu ditambahkan directive visible_hostname
Hasil akhir dari konfigurasi di atas menjadi: http_port 192.168.100.1:3128 transparent dns_nameservers 8.8.8.8 8.8.4.4 cache_effective_user squid cache_effective_group squid cache_access_log /var/log/squid/access.log cache_log /var/log/squid/cache.log visible_hostname local.proxyserver
Selesai dengan konfigurasi squid, baru ditambahkan konfigurasi ACL di bawahnya. Penelitian ini menggunakan metode whitelist, artinya secara default sistem akan memblok seluruh akses ke website yang dituju dan hanya mengizinkan beberapa website saja yang terdapat dalam daftar whitelist. Untuk itu perlu ditetapkan terlebih dahulu daftar whitelist yang digunakan dalam penelitian ini.
Tabel 3 – Daftar Whitelist Daftar Whitelist .viva.co.id .detik.com .bankina.co.id .bi.go.id .idx.co.id
Setelah menentukan daftar whitelist yang diizinkan untuk diakses, selanjutnya akan dilakukan konfigurasi ACL, berikut ini adalah tahapan dan hasil akhir dari konfigurasi yang dilakukan:
1. acl all src 0.0.0.0/0.0.0.0
Directive ini mendeklarasikan nama all yang mewakili alamat IP yang bersumber dari mana pun
(0.0.0.0/0.0.0.0)
2. acl lan src 192.168.100.1-192.168.100.254/255.255.255.255
Directive ini mendeklarasikan nama lan yang mendefinisikan bahwa all mewakili seluruh sumber
alamat IP dari 192.168.100.1 sampai dengan 192.168.100.254. 3. acl allweb dst 0.0.0.0/0.0.0.0
Directive ini mendeklarasikan nama allweb yang mewakili seluruh alamat IP yang dituju.
4. acl whitelist dstdomain “/etc/squid/whitelist.txt”
Directive ini mendeklarasikan nama whitelist yang mewakili daftar tujuan domain web yang
terletak dalam file whitelist.txt di folder /etc/squid. File whitelist.txt berisikan daftar
domain-domain website yang diizinkan untuk diakses di PT Bank Ina Perdana.
5. acl working_hours time MTWHF 08:00-17:00
Directive ini mendeklarasikan nama working_hours yang mendefinisikan waktu operasional PT
Bank Ina Perdana, yaitu pada hari Senin – Jumat pukul 08.00 – 17.00 WIB. 6. acl social_media dstdomain “/etc/squid/social_media.txt”
Directive ini mendeklarasikan nama social_media yang mewakili daftar tujuan domain web yang
terletak dalam file social_media di folder /etc/squid. File social media ini berisikan domain
website yang mengandung konten media sosial yang hanya diakses di PT Bank Ina Perdana di
luar jam operasional berlangsung. 7. http_access allow whitelist
Directive ini mendeklarasikan bahwa ACL akan mengizinkan whitelist untuk dapat diakses oleh user.
8. http_access deny working_hours
Directive ini mendeklarasikan bahwa ACL akan melarang penggunaan user untuk mengakses internet pada saat jam operasional berlangsung
9. http_access deny social_media
Directive ini mendeklarasikan bahwa ACL hanya akan mengizinkan social_media untuk dapat
diakses di luar jam operasional kantor. 10. http_access deny allweb
Directive ini mendeklarasikan bahwa ACL akan melarang allweb untuk diakses. Dengan directive
ini maka ACL akan melarang seluruh domain website yang akan diakses oleh user kecuali yang terdapat di dalam daftar whitelist dan social_media.
11. http_access allow lan
Directive ini mendeklarasikan bahwa ACL akan mengizinkan semua alamat IP yang masuk
dalam nama lan untuk mengakses jaringan internet. 12. http_access deny all
Directive ini mendeklarasikan bahwa ACL akan melarang seluruh alamat IP yang akan
mengakses ke jaringan internet kecuali jaringan yang ada dalam lan.
Gambar x – Hasil Konfigurasi ACL
SIMPULAN DAN SARAN
Rancangan dan konfigurasi proxy serevr squid telah berhasil dilakukan beserta dua fiturnya, yaitu
content filtering dan Dynamic Host Configuration Protocol (DHCP) di PT Bank Ina Perdana.
Rancangan dan konfigurasi content filtering dilakukan dengan metode Access Control List (ACL) dan
whitelist, artinya secara default sistem akan memblok akses ke seluruh website kecuali website-wesbite yang berada dalam daftar whitelist. Selain itu fitur pembatasan user terhadap website yang
akan diakses juga dilakukan berdasarkan waktu dan perangkat yang digunakan. Untuk membatasi jumlah perangkat yang digunakan penelitian ini menggunakan fitur DHCP dengan menggunakan metode static allocation.
Untuk perkembangan metode selanjutnya, diharapkan pada fitur content filtering dapat ditambahkan untuk membatasi akses terhadap website yang memiliki port HTTPS serta penggunaan username dan
password untuk mengakses ke jaringan internet.
REFERENSI
Bruno, A., Jordan, S. (2011). CCDA 640-864 Official Cert Guide. Indianapolis: Cisco Press Droms, R., Lemon,T. (2003). The DHCP Handbook. Second Edition. Indianapolis: Sams
Jeffries, Amos. 2013. SquidFaq/SquidAcl – Squid Web Proxy Wiki. Retrieved (01-28-2014) from http://wiki.squid-cache.org/SquidFaq/SquidAcl
Johansson, P., Kapoor, R., Kazantzidis, M., & Gerla, M. (2002). Personal Area Networks: Bluetooth Or IEEE 802.11. International Journal of Wireless Information Networks, 9 (2), 89-103.
Laudon, Kenneth C., Laudon, Jane P. (2012). Management Information Systems Managing The
Digital Firm. New Jersey: Pearson Education.
Odom, W. (2004). Computer Networking first-step. Indianapolis: Cisco Press.
Odom, W. (2008). CCENT/CCNA ICND1 Official Exam Cert Guide. Second Edition. Indianapolis: Cisco Press.
Pavani, V., Chandrika, I. L. V., & Krishna, A. R. (2012). Local Area Network (LAN) Technologies.
International Journal of Innovative Technology and Exploring Engineering, 1 (6), 70-73.
Saxena, S. (2013). Content Filtering Using Internet Proxy Servers. International Journal of Computer
& Organization Trends, 3 (2), 10-15.
Tanenbaum, A., Wetherall, D. J. (2011). Computer Networks. Fifth Edition. Boston: Pearson Education.
Wessels, D. (2004). Squid: The Definitive Guide. California: O’Reilly Media
RIWAYAT PENULIS
Achmad Fadillah lahir di Palembang pada 9 April 1992. Dia menamatkan pendidikan S1 di Binus University dalam bidang Teknik Informatika peminatan jaringan komputer. Sebelumnya dia berhasil lulus dalam mengambil sertifikasi CCNA (Cisco Certified Network Associate) pada bulan September 2013.
Raziv Herman Diputra lahir di Tangerang pada 23 Januari 1993. Dia menamatkan pendidikan S1 di Binus University dalam bidang Teknik Informatika peminatan jaringan komputer. Sebelumnya dia berhasil lulus dalam mengambil sertifikasi CCENT (Cisco Certified Entry Networking Technician) pada bulan Agustus 2013.