Perancangan dan Implementasi Transparent DNS Untuk Membatasi Hak Akses Internet (Studi Kasus: SMP Anak Terang, Salatiga)
Artikel Ilmiah
Beatrix R.H. Nuhamara (672011246) Teguh Indra Bayu, S.Kom., M.Cs.
Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga November 2015
Perancangan dan Implementasi Transparent DNS Untuk Membatasi Hak Akses Internet (Studi Kasus: SMP Anak Terang, Salatiga)
Artikel Ilmiah
Diajukan kepada Fakultas Teknologi Informasi untuk memperoleh Gelar Sarjana Komputer
Peneliti : Beatrix R.H. Nuhamara (672011246) Teguh Indra Bayu, S.Kom., M.Cs.
Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga November 2015
Perancangan dan Implementasi Transparent DNS Untuk Membatasi Hak Akses Internet (Studi Kasus: SMP Anak Terang, Salatiga) 1)
Beatrix R.H. Nuhamara, 2)Teguh Indra Bayu
Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50711, Indonesia 1) E-mail:
[email protected], 2)
[email protected] Abstract Emerging technology increases the need for profitable and efficient service, without exception education too. Internet become a media for finding information easily and quickly. In education context, for example a school, generally the Internet is used for studying, doing assignments or searching for learning materials. However, Internet users in some schools often accessing web page that is not allowed. Moreover, not every informations we get using the Internet are always credible. This problem can be solved by supervising internet connections usage in a school by restricting the access rights of Internet usage. One method that can be used to address the problem is by using the Transparent DNS. Transparent DNS can be useful to force users to use DNS (Domain Name System) server or DNS block method by means of deflecting DNS traffic to the other server and redirects the user does not know this traffic. This research was conducted using PPDIOO (Prepare, Plan, Design, Implement, Operate, Optimize) research methodology. Results of this research consists of tables and figures which show that the system could limit the access rights according to the existing categories. Keywords: Bind9, Transparent DNS Abstrak Teknologi yang semakin berkembang meningkatkan kebutuhan layanan yang menguntungkan dan efisien, tidak terkecuali dunia pendidikan. Internet menjadi media dalam mencari informasi dengan mudah dan cepat. Dalam konteks pendidikan, contohnya sebuah sekolah, pada umumnya internet digunakan untuk belajar, mengerjakan tugas, mencari materi - materi pembelajaran. Namun, pengguna internet di suatu sekolah sering kali mengakses alamat web yang tidak diperkenankan. Selain itu, tidak semua informasi yang kita dapatkan menggunakan Internet selalu kredibel. Masalah ini dapat diatasi dengan mengawasi penggunaan koneksi internet dalam sekolah dengan membatasi hak akses penggunaan internet. Salah satu metode yang dapat digunakan untuk menjawab masalah tersebut yakni dengan menggunakan Transparent DNS. Transparent DNS dapat berguna untuk memaksa pengguna menggunakan DNS (Domain Name System) server atau metode blok DNS dengan cara membelokkan trafik DNS menuju server lain dan pengguna tidak mengetahui pembelokan trafik ini.Penelitian ini dilakukan dengan tahapan metodologi penelitian PPDIOO (Prepare, Plan, Design, Implement, Operate, Optimize). Hasil penelitian ini terdiri tabel dan gambar yang menunjukan bahwa sistem dapat melakukan pembatasan hak akses sesuai dengan kategori yang ada. Kata Kunci : Bind9, Transparent DNS 1)
Mahasiswa Fakultas Teknologi Informasi Jurusan Teknik Informatika, Universitas Kristen Satya Salatiga. 2) Staff Pengajar Fakultas Teknologi Infomasi, Universitas Kristen Satya Wacana Salatiga.
Wacana
1.
Pendahuluan
Pengetahuan dapat diperoleh oleh setiap orang melalui pendidikan, pengalaman, membaca, berinteraksi dengan orang lain, dan banyak cara lainnya. Semakin berkembangnya teknologi informasi seperti internet berdampak juga bagi setiap orang untuk menambah wawasan/pengetahuan. Hal tersebut merupakan dampak positif yang didapatkan dari internet. Sebaliknya dampak negatif di sebabkan oleh penyalahgunaan internet seperti dalam dunia pendidikan, contohnya siswa tidak boleh mengakses internet seperti situs terlarang, game online, media sosial dan situs yang tidak diperkenankan saat berada dalam lingkungan sekolah. Fakta menunjukan dengan studi kasus pada sekolah SMP Anak Terang yang dilakukan dengan observasi secara langsung, wawancara dengan staff IT sekolah dan monitoring trafik dari penggunaan internet di sekolah menggunakan calamaris. Permasalahan yang sering terjadi pada saat pembelajaran TIK di kelas adalah siswa mengakses situs media sosial, game online, youtube, dan situs terlarang lainnya serta pengawasan yang dilakukan hanya dengan mengunjungi siswa satu per satu untuk melihat apa yang sedang diakses oleh para siswa. Berdasarkan dengan kondisi tersebut diperlukan batasan hak akses internet bagi siswa dengan me-redirect berdasarkan alamat situs terlarang yang coba diakses oleh siswa dan tidak untuk guru. Kebutuhan untuk me-redirect situs-situs yang dilarang untuk diakses oleh siswa menggunakan DNS server lokal yang hanya dapat diakses dari dalam dengan tujuan untuk memberitahukan bahwa situs telah terblokir, namun dengan perkembangan informasi teknologi pengguna internet dapat mencari cara untuk menembus DNS server yang memiliki konten filtering. Solusi dapat dilakukan dengan berbagai macam metode, salah satunya dengan menggunakan Transparent DNS. Transparent DNS dapat berguna untuk memaksa pengguna menggunakan DNS (Domain Name System) server atau metode blok DNS dengan cara membelokkan trafik DNS menuju server lain dan pengguna tidak mengetahui pembelokan trafik ini. Firewall NAT (Network Address Translation) digunakan untuk menangkap dan me-redirect koneksi permintaan DNS (port 53), konfigurasi firewall NAT berada pada router mikrotik. Berdasarkan latar belakang masalah, maka dilakukan penelitian dengan tujuan merancang dan mengimplementasi Transparent DNS, yang berfungsi sebagai pembatasan hak akses penggunaan internet bagi siswa. 2.
Kajian Pustaka Dalam penelitian sebelumnya yang berjudul “ Penggunaan Mikrotik RouterOS Untuk Membatasi Akses Situs Jejaring Sosial “, PT. Pura Barutama membutuhkan sistem penyaringan halaman web jejaring sosial menggunakan routerOS mikrotik, sistem menggunakan aplikasi firewall dan proxy yang mampu membatasi penggunaan situs jejaring sosial. Firewall pada dasarnya memblokir komunikasi, sementara proxy hanya mengalihkan komunikasi data. Penggunaan firewall yang diaplikasikan adalah metode packet filtering yang mana memiliki keuntungan yaitu performa tinggi dan efektif serta tidak membebani inti router. Sementara kelemahannya yaitu metode ini dapat dengan cepat menjadi 1
konfigurasi yang sangat kompleks, dan sulit digunakan untuk protokol yang dinamis. Penggunaan metode proxy juga memiliki keunggulan yaitu dapat menyimpan akitivitas secara detail dan utamanya adalah caching, mendukung autentikasi kelas pengguna, dapat memperbolehkan dan menolak akses berbasis konten. Kelemahannya metode ini lebih memakan kerja prosesor saat digunakan dibanding metode packet filtering[1]. Pada penelitian yang berjudul “ Analisis Dan Perancangan Pengontrolan Trafik Jaringan Internet Terhadap User Menggunakan Mikrotik Dan Server Linux (Studi Kasus : SMPN 2 Depok) “, alur kerja penelitian ini menggunakan metode PPDIOO (Prepare, Plan, Design, Implement, Operate, Optimize ) dengan batasan atau pemblokiran bagi pengguna internet dalam mengakses suatu situssitus tertentu menggunakan aplikasi Squid Guard dan Shalalist yang di-install dalam proxy server. Semua user tidak bisa mengakses situs yang mengandung konten negatif karena situs maupun kata kunci tersebut diblokir. Serta pada waktu jam pelajaran siswa tidak bisa mengakses beberapa situs, agar siswa lebih fokus dalam belajar[2]. Berdasarkan penelitian yang pernah dilakukan, aturan transparent proxy dimanfaatkan agar pengguna mengikuti aturan proxy dari routerOS mikrotik. Terkait dengan implementasinya, proxy yang dimanfaatkan juga sebagai caching memiliki kelemahan jika tidak di-upgrade ketika jumlah user jaringan bertambah maka terjadi peristiwa macetnya aliran data. Pengaksesan terhadap situs yang belum pernah diakses sebelumnya akan menjadi lambat, karena client harus meminta terlebih dahulu kepada proxy, setelah itu proxy yang akan melakukan request dari client kepada layanan internet. Oleh karena itu penelitian selanjutnya yang akan dilakukan adalah memanfaatkan router mikrotik sebagai gateway dengan menambahkan DNS server yang memiliki konten filtering dan menerapkan transparent DNS yang bekerja memaksa pengguna internet untuk melakukan resolve DNS ke DNS server lokal walaupun dari pengguna dapat mensetting dengan DNS server yang lain. Berdasarkan studi kasus pada SMP Anak Terang, filtering atau batasan hak akses penggunaan internet hanya dilakukan untuk jaringan siswa dan tahapan penyelesaian berdasarkan metode penelitian yaitu PPDIOO. BIND 9 merupakan salah satu implementasi dari DNS yang paling banyak digunakan pada server di internet. DNS Server merupakan sistem database terdistribusi. Terdistribusi berarti bahwa server DNS hanya akan menyimpan data nama host atau komputer dari domain yang diwakilinya saja. DNS tersebut tidak menyimpan data host atau komputer dari domain yang tidak diwakilinya. Tetapi server DNS yang saling terpisah tersebut, bagaimanapun juga terkoneksi dan bertukar data dengan server DNS yang lain ketika server tersebut membutuhkan data mengenai komputer atau host yang berada di bawah domain yang diwakilinya [3]. Transparent DNS berguna untuk “memaksa pengguna” menggunakan DNS server yang mengandung konten filtering, karena pengguna benar-benar tidak mengetahui tentang keberadaan DNS ini, dan apapun konfigurasi pada sisi pengguna, selama DNS server ini berada pada jalur jaringan yang pasti dilalui
2
oleh pengguna untuk menuju ke internet, maka pengguna pasti dengan sendirinya akan “menggunakan” DNS server lokal yang mengandung konten filtering[4].
Gambar 1 Transparent DNS
Pada gambar 1 menjelaskan bahwa penerapan transparent DNS dengan perbedaan DNS (normal dan filtered) yang digunakan, saat user menggunakan DNS yang tidak mengandung blacklist maka user dengan bebas mengakses internet tanpa adanya batasan hak akses (filtering) sehingga website yang dituju dapat ditampilkan. Berbeda dengan user yang dipaksa menggunakan DNS filtered saat user mengakses situs yang termasuk dalam blacklist maka trafik DNS diarahkan ke server DNS lokal, ketika DNS server lokal menerima permintaan domain blacklist kemudian akan ditampilkan website warning bahwa situs terblokir. Apache2 merupakan aplikasi server web open source yang dapat digunakan secara gratis. Apache di dukung dengan bahasa pemrograman web seperti PHP (Hypertext Prepocessor), Python dan Perl, sampai dukungan terhadap beragam skema otentikasi. Terdapat beberapa berkas konfigurasi untuk Apache antara lain : apache2.conf merupakan berkas konfigurasi utama Apache, httpd.conf merupakan berkas diperuntukkan untuk konfigurasi yang ditambahkan oleh pengguna. Secara default berkas ini merupakan berkas kosong dan ports.conf yang berisikan daftar port yang digunakan oleh Apache. Secara default Apache akan mendengarkan di port 80 untuk HTTP (HyperText Transfer Protocol) dan 443 untuk HTTPS (HyperText Transfer Protocol Secure)[5]. Mikrotik RouterOS adalah sistem operasi dan perangkat lunak yang dapat digunakan untuk menjadikan komputer biasa menjadi router network yang handal, mencakup berbagai fitur yang dibuat untuk IP network dan jaringan wireless. Fitur-fitur yang digunakan diantaranya adalah Firewall dan NAT (Network Address Translation) Routing, hotspot, DNS Server dan DHCP (Dynamic Host Configuration Protocol) server. Mikrotik dapat digunakan dalam 2 tipe, yaitu dalam bentuk perangkat keras dan perangkat lunak. Dalam bentuk perangkat keras, Mikrotik biasanya sudah diinstalasi pada suatu board tertentu, sedangkan 3
dalan bentuk perangkat lunak, Mikrotik merupakan suatu distro linux yang memang dikhususkan untuk fungsi router[6]. 3.
Metode Penelitian Metode penelitian yang digunakan adalah metode PPDIOO (Prepare, Plan, Design, Implement, Operate, Optimize) untuk menganalisis dan merancang sistem jaringan sekolah.
Gambar 2 Skema Metodologi PPDIOO[2].
Tahap pertama: Prepare merupakan tahap dalam menganalisis masalah dari pengumpulan data berupa wawancara, observasi dan monitoring trafik jaringan terhadap kelakuan akses oleh pengguna internet antara guru dan siswa guna mencapai tujuan penelitian. Hasil dari pengumpulan data adalah belum adanya batasan atau pemblokiran bagi pengguna internet terkhususnya siswa dalam mengakses situs-situs yang tidak diperkenankan. Pengujian dilakukan dengan uji ping, traceroute, nslookup, akses browser dan monitoring trafik menggunakan calamaris.
Gambar 3 Hasil Monitoring Menggunakan Calamaris dan Informasi DHCP Client
4
Dari hasil monitoring yang telah dilakukan, dengan keadaan jaringan sebelum penerapan sistem adalah seperti gambar 3 :
Gambar 4 Topologi Jaringan Lama
Tahap Kedua: Plan merupakan tahap perencanaan solusi dan menganalisis kebutuhan. Analisis yang dilakukan seperti kebutuhan apa saja yang dibutuhkan dalam pengaksesan jaringan internet dan pengumpulan data dari analisis kebutuhan yang sudah dilakukan untuk membangun perancangan jaringan penerjemah syarat kebutuhan ke sebuah perancangan yang dapat diperkirakan. Solusi yang ditawarkan dalam penelitian ini adalah : 1. Penambahan device berupa router untuk pemecah jaringan. 2. Ditambahkan sebuah server (DNS Server) untuk pemblokiran situssitus terlarang dan perbedaan hak akses penggunaan internet. 3. Menggunakan logging bind sebagai pengontrolan trafik jaringan agar dapat memantau aktifitas user. Dalam penelitian ini menggunakan beberapa perangkat keras, yang dijelaskan pada Tabel 1 : Tabel 1 Kebutuhan Perangkat Keras Hardware Router Mikrotik RB 750Series
Komputer Server DNS (Linux)
Kebel UTP
Spesifikasi CPU AR7241 400MHz RAM 32MB LAN Ports 5 Intel Dual Core Processor 2.20 GHz RAM 2 GB HDD 320 GB Straight
Fungsi Sebagai penghubung antar jaringan Pemblokiran situs-situs terlarang dan perbedaan hak akses penggunaan internet
Penghubung router dengan hub, hub dengan access point
Penelitian yang dilakukan menggunakan 1 komputer server DNS yang difungsikan sebagai server pemblokiran situs-situs terlarang, 1 buah Router Mikrotik sebagai pemecah jaringan, dhcp klien, firewall yang memaksa permintaan DNS dari user ke DNS server lokal serta perbedaan hak akses 5
penggunaan internet di sekolah serta pemanfaatan hotspot bagi guru maupun siswa dan kabel UTP (Unshielded Twisted Pair) sebagai penghubung router, switch, access point serta komputer server DNS. Disamping kebutuhan terhadap hardware, terdapat pula software yang tentu diperlukan dalam mendukung untuk pembangunan Transparent DNS dalam penelitian ini. Pada Tabel 2 menunjukkan perangkat lunak yang dibutuhkan. Tabel 2 Kebutuhan Perangkat Lunak Kebutuhan Sistem operasi DNS server Web server Remote sever
Details Ubuntu Server Bind9 Apache2 Bitvise SSH Client
Gambar 4 Topologi Jaringan Baru
Tahap Ketiga: Design merupakan tahap perancangan arsitektur jaringan baru (Gambar 4) untuk pencapaian tujuan penelitian memblokir dan me-redirect URL(Uniform Resource Locator) yang tidak diperkenankan serta membatasi hak akses penggunaan internet terkhususnya pada jaringan siswa. Pada Gambar 4 adanya penambahan router mikrotik sesuai dengan perencanaan solusi pada tahap Plan yang memecah jaringan guru dan siswa, terkhusus untuk siswa dipaksa menggunakan DNS yang memiliki blacklist. Sistem yang akan dibangun dan diimplementasikan sesuai dengan alokasi penggunaan IP address yang terlihat pada Tabel 3.
6
Tabel 3 Alokasi Penggunaan IP Address Perangkat Wireless Access Point (Lantai 2) Server Sekolah Router Mikrotik
1. 2.
IP Add Netmask
Keterangan : 192.168.2.1/24 : 255.255.255.0
IP Add Netmask
: 192.168.2.2/24 : 255.255.255.0
1. IP Add : 192.168.2.3/24 Netmask : 255.255.255.0 2. IP Add : 192.168.3.1/24 Netmask : 255.255.255.0
Komputer Server DNS
IP Add Netmask
: 192.168.3.3/24 : 255.255.255.0
Wireless Access Point (Lantai 3)
IP Add Netmask
: 192.168.3.5/24 : 255.255.255.0
Hotspot
3. 4.
5.
Guru (Lantai 2) 1. IP Add : 192.168.2.3-192.168.2.254/24 Netmask : 255.255.255.0 Siswa (Lantai 3) 2. IP Add : 192.168.3.2-192.168.3.254/24 Netmask : 255.255.255.0
Tahap Keempat: Implement merupakan tahap penerapan, tahapan inilah yang secara nyata dalam mengerjakan suatu sistem mulai dari menginstal aplikasi dan konfigurasi semua yang telah direncanakan. Tahapan ini juga akan menjadi penentu berhasil atau gagalnya sistem yang akan dibangun. Tahap Kelima: Operate, setelah konfigurasi selesai, maka akan dilakukan testing terhadap sistem yang telah dibuat yaitu dengan dilakukan pengujian sebagai pembatas hak akses penggunaan internet, dari pengujian tersebut bertujuan menemukan kesalahankesalahan terhadap sistem dan kemudian bisa diperbaiki. Setelah melakukan beberapa tahap di atas maka sistem yang sudah jadi akan digunakan oleh user. Tahap Keenam: Optimize merupakan tahap terakhir dalam metode PPDIOO. Tahapan ini termasuk dalam memperbaiki kesalahan yang tidak ditemukan pada langkah sebelumnya. Perbaikan implementasi unit sistem dan peningkatan jasa sistem sebagai kebutuhan baru. 4.
Implementasi dan Pembahasan Implementasi Transparent DNS sebagai pembatas hak akses bagi siswa dengan menggunakan DNS yang mengandung blacklist di konfigurasi pada firewall router mikrotik. Sebelumnya konfigurasi pada DNS server di mikrotik harus menggunakan DNS server lokal 192.168.3.3.
Kode program 1 Setting DNS dan Transparent DNS 1. 2. 3.
/ip dns set primary-dns =192.168.3.3 allow-remote-request =yes /ip firewall nat add chain =dstnat action =dst-nat to-address =192.168.3.3 to ports =53 protocol =tcp dst-port =53 /ip firewall nat add chain =dstnat action =dst-nat to-address =192.168.3.3 to ports =53 protocol =udp dst-port =53
7
Kode program 1 menjelaskan bahwa DNS 192.168.3.3 adalah alamat dari DNS server lokal. Allow remote request = yes dilakukan supaya IP address yang ada pada interface router selain untuk gateway juga bisa dijadikan sebagai alamat DNS server sebagai klien. Selanjutnya konfigurasi firewall NAT untuk menghubungkan pengguna ke jaringan publik dengan menggunakan masquerade. “Masquerade adalah salah satu fasilitas di mikrotik yang memungkinkan komputer pengguna terhubung ke jaringan internet dengan alamat IP privat melalui mikrotik sebagai penerjemah alamat jaringan”[1]. Kemudian konfigurasi transparent DNS juga menggunakan NAT. Nomor baris 2 dan 3 menjelaskan bahwa akan me-redirect semua trafik yang resolve DNS (port 53) menuju ke DNS server lokal dan mencegah dari perubahan DNS yang dapat diganti sesuai keinginan pengguna agar terbebas dari blacklist. Konfigurasi untuk URL yang ingin diblokir berada pada server DNS yang mana berisikan deklarasi zona terdapat pada berkas named.conf.local. Berkas tersebut beriisikan beberapa parameter yang mendefinisikan fungsi yang dimiliki oleh bind. Pada bagian ini juga akan dibahas mengenai hasil penerapan dan pembahasan yang menjadi fokus adalah proses filtering yang me-redirect situs sebagai pembatasan hak akses bagi siswa, dengan menggunakan sistem operasi(linux ubuntu). Konfigurasi lebih lanjut dapat dilihat pada Tabel 4. Tabel 4 Instalasi Aplikasi Dan Perintah Pada Server. 1. 2. 3. 4. 5. 6.
7. 8.
Langkah-langkah Masuk sebagai user tertinggi Update system Instalasi bind9 Instalasi apache2 Konfigurasi IP DNS Server Konfigurasi Bind Zone
Perintah sudo su apt-get update apt-get install bind9 apt-get install apache2 nano /etc/network/interfaces –
Konfigurasi resolv Konfigurasi Web Server
nano /etc /bind/db.siswa nano /etc/bind/db.reverse nano /etc/bind/db.blok nano /etc/bind/named.conf.local nano /etc/resolv.conf nano /var/www/html/index.html nano /etc/apache2/sites-available/default
Kode Program 2 menjelaskan bahwa alamat domain untuk jaringan siswa adalah www.smpanakterang.com dengan IP address 192.168.3.3. “Semua berkas zona memiliki format dasar yang diawali dengan rekaman SOA (Start Of Authorrity) dimana rekaman ini menandai awal dari berkas zona dan mendefinisikan parameter yang akan mempengaruhi seluruh zona. Bagian selanjutnya adalah NS (Name Server) menentukan server DNS yang digunakan oleh domain, A (Address) memetakan nama host ke alamat IP, PTR (Pointer)
8
memetakan alamat IP ke nama host dan CNAME (Canonical Name) merupakan nama alias dari nama server”[4]. Kode program 2 db.siswa 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
$TTL @
604800 IN SOA 2 604800 86400 2419200 604800 )
; @ IN @ IN @ IN ns IN www
NS A AAAA A IN
ns.smpanakterang.com. root.smpanakterang.com. ( ; Serial ; Refresh ; Retry ; Expire ; Negative Cache TTL
ns.smpanakterang.com. 192.168.3.3 ::1 192.168.3.3 CNAME ns
Kode Program 3 menjelaskan bahwa rekaman PTR merupakan inti dari zona reverse, hal ini dikarenakan PTR akan memetakan nomor IP ke nama host. Rekaman PTR menggunakan angka paling kanan dari alamat IP seperti alamat IP 192.168.3.3 maka angka paling kanan dari subnet yaitu 4 digunakan sebagai alamat IP di dalam rekaman PTR. Kode Program 5 memiliki fungsi untuk memetakan nama host yang terletak pada database blacklist.txt ke alamat IP 192.168.3.3, mengakibatkan URL blacklist dapat di redirect. Kode program 3 db.reverse. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
$TTL @
; @ @ 3 3 www
604800 IN SOA 2 604800 86400 2419200 604800 ) IN IN IN IN
NS A PTR PTR IN
ns.smpanakterang.com. root.smpanakterang.com. ( ; Serial ; Refresh ; Retry ; Expire ; Negative Cache TTL
ns. 192.168.3.3 ns.smpanakterang.com. www.smpanakterang.com. CNAME ns
Kode program 4 db.blok 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
$TTL @
604800 IN SOA 2 604800 86400 2419200 604800 )
; @ IN @ IN @ IN ns IN www IN * IN
NS A AAAA A CNAME A
ns.smpanakterang.com. root.smpanakterang.com. ( ; Serial ; Refresh ; Retry ; Expire ; Negative Cache TTL ns.smpanakterang.com. 192.168.3.3 ::1 192.168.3.3 ns 192.168.3.3
9
Kode program 5 merupakan database URL blacklist (beberapa sample hasil monitoring dengan calamaris) seperti media sosial, game online dan beberapa situs-situs yang tidak diperkenankan untuk men-download dan nonton online. Situs-situs ini berdasarkan kebutuhan sekolah atau yang sering ditemui saat jam pelajaran berlangsung dan diakses oleh siswa. Pengecualian untuk nomor baris 1 penambahan blacklist untuk pengaksesan domain plugin. Kode program 5 blacklist.txt 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31.
zone "addons.mozilla.org" {type master; file "/etc/bind/db.blok";}; zone "facebook.com" {type master; file "/etc/bind/db.blok";}; zone "twitter.com" {type master; file "/etc/bind/db.blok";}; zone "soundcloud.com" {type master; file "/etc/bind/db.blok";}; zone "instagram.com" {type master; file "/etc/bind/db.blok";}; zone "path.com" {type master; file "/etc/bind/db.blok";}; zone "youtube.com" {type master; file "/etc/bind/db.blok";}; zone "gambling.com" {type master; file "/etc/bind/db.blok";}; zone "anonymox.net" {type master; file "/etc/bind/db.blok";}; zone "utorrent.com" {type master; file "/etc/bind/db.blok";}; zone "thepiratebay.la" {type master; file "/etc/bind/db.blok";}; zone "viwawa.com" {type master; file "/etc/bind/db.blok";}; zone "nontons.tv" {type master; file "/etc/bind/db.blok";}; zone "aq.com" {type master; file "/etc/bind/db.blok";}; zone "omegle.com" {type master; file "/etc/bind/db.blok";}; zone "photobucket.com" {type master; file "/etc/bind/db.blok";}; zone "drugs.com" {type master; file "/etc/bind/db.blok";}; zone "ganool.com" {type master; file "/etc/bind/db.blok";}; zone "ganja.com" {type master; file "/etc/bind/db.blok";}; zone "agkidzone.com" {type master; file "/etc/bind/db.blok";}; zone "bestgamesland.com" {type master; file "/etc/bind/db.blok";}; zone "cartoonnetwork.com" {type master; file "/etc/bind/db.blok";}; zone "pokerstrategy.com" {type master; file "/etc/bind/db.blok";}; zone "cybergomez.net" {type master; file "/etc/bind/db.blok";}; zone "rot.prodigy.co.id" {type master; file "/etc/bind/db.blok";}; zone "tvonlineindonesia.net" {type master; file "/etc/bind/db.blok";}; zone "goal.com" {type master; file "/etc/bind/db.blok";}; zone "komikstation.com" {type master; file "/etc/bind/db.blok";}; zone "addictinggames.com" {type master; file "/etc/bind/db.blok";}; zone "gamehouse.com" {type master; file "/etc/bind/db.blok";}; zone "worldoffreegames.com" {type master; file "/etc/bind/db.blok";};
Pada Kode Program 7, nomor baris 1 kegunaan dari include adalah memasukan database URL yang ingin diblokir berada pada “/etc/bind/...”. Dalam database URL tersebut berisi alamat situs yang tidak diperkenankan untuk diakses oleh siswa, sehingga ketika siswa mencoba mengakses salah satu dari alamat situs yang berada dalam database URL akan di-redirect ke alamat DNS server lokal. Nomor baris 2-10 merupakan direktif zona yang digunakan untuk mendefinisikan domain yang akan dilayani oleh BIND. Zona yang akan ditangani oleh BIND adalah domain smpanakterang.com dengan type yang menentukan sifat dari zona sebagai master dan file memberitahukan BIND lokasi dari berkas konfigurasi zona smpanakterang.com. Kode program 7 named.conf.local 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
include "/etc/bind/blacklist.txt"; zone "3.168.192.in-addr.arpa"{ type master; notify no; file "/etc/bind/db.reverse"; }; zone "smpanakterang.com"{ type master; file "/etc/bind/db.siswa"; };
10
Selanjutnya konfigurasi untuk apache2 dimulai dari /var/www/. Berkas /var/www/ merupakan berkas berisikan deklarasi web dari www.smpanakterang.com. Fungsi dari DNS www.smpanakterang.com berisi pemberitahuan URL yang telah diblok yang dapat diakses dari sisi client khususnya siswa. Ketika client yang tidak diberi hak akses me-request URL, maka akan di-redirect ke www.smpanakterang.com yang berisi pemberitahuan tersebut. Gambar 5 menunjukkan antarmuka sistem dimana salah 1 situs (viwawa.com) dari blacklist.txt diakses dan di-redirect ke DNS server www.smpanakterang.com, berdasarkan database URL blacklist dan konfigurasi zona db.blok. Sebuah server DNS dapat berfungsi untuk melakukan filtering domain dan dapat melakukan redirect dari satu domain ke domain yang lain, seperti website internet positif. Ketika client mencoba mengakses URL terlarang dan URL tersebut tercatat dalam blacklist, maka trafik akan diarahkan ke website internet positif.
Gambar 5 Tampilan Situs Yang Terblokir
Berdasarkan pembatasan hak akses internet bagi guru maupun siswa dibedakan menurut jaringannya masing-masing. Hotspot dengan user berbeda yaitu guru dan siswa mempermudah untuk pembatasan hak akses internet agar kedua user berada dalam jalur jaringannya. Gambar 6 dan Gambar 7 menunjukkan antarmuka sistem login hotspot bagi guru dan siswa dari router mikrotik.
Gambar 6 Siswa Login Hotspot
11
Gambar 7 Guru Login Hotspot
Sesuai dengan jalurnya masing-masing guru dapat dengan bebas mengakses internet tanpa mengganggu jaringan siswa begitupun sebaliknya serta include database URL terlarang dapat berlaku hanya untuk jaringan siswa. Analisa sistem juga dilakukan dan digambarkan dalam bentuk flowchart seperti terlihat pada Gambar 8 :
Gambar 8 Flowchart ACL
Gambar 8 menjelaskan proses kerja dari sistem ini dimana dalam melakukan filtering berdasarkan hak akses mulai dengan user login hotspot disini terjadi proses autentikasi dimana router akan menggecek apakah username dan 12
password valid atau tidak jika ya maka login berhasil, jika tidak maka sistem akan menginformasikan kesalahan pada username atau password. Setelah login, klien mengakses situs yang ingin dituju. Pengenalan pada alamat website yang diinputkan oleh klien dilakukan dengan pengecekan web server dari website tujuan di internet, dengan kondisi apakah web server tersebut tersedia atau tidak, jika kondisi ya maka selanjutnya filtering terhadap siapa yang me-request jika kliennya adalah siswa serta mengakses situs yang terdaftar dalam blacklist, maka akan di-redirect ke www.smpanakterang.com. Jika kliennya adalah guru maka tidak ada pembatasan hak akses dalam menggunakan internet. Pengujian yang dilakukan yakni untuk melihat apakah Transparent DNS mampu membatasi hak akses siswa mengakses suatu website atau URL terlarang. Sesuai dengan konfigurasi yang telah dilakukan, hasil pengujian untuk pemblokiran dapat dilihat pada Tabel 5. Tabel 5 Hasil Pengujian Pembatasan Hak Akses URL google.com yahoo.com bing.com ask.com addons.mozilla.org facebook.com twitter.com soundcloud.com instagram.com path.com youtube.com gambling.com anonymox.net utorrent.com thepiratebay.la viwawa.com nontons.tv aq.com omegle.com photobucket.com drugs.com ganool.com ganja.com agkidzone.com bestgamesland.com cartoonnetwork.com pokerstrategy.com cybergomez.net rot.prodigy.co.id tvonlineindonesia.net goal.com komikstation.com addictinggames.com gamehouse.com worldoffreegames.com
Siswa Diizinkan Diblok √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √
13
Guru Diizinkan Diblok √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √
Pada Tabel 5 dapat dilihat bahwa dengan menggunakan 30 website sebagai database dari blacklist.txt, sistem mampu melakukan pembatasan hak akses sesuai dengan klien yang mengakses. Berdasarkan hasil pengujian pembatasan hak akses untuk siswa dapat mengakses google, yahoo, bing dan ask. Untuk mengetahui hasil pemblokiran berdasarkan hak akses dapat dilihat laporan dari logging bind dengan kode program seperti kode program 8 : Kode program 8 Menampilkan querylog 1. 2.
root@server:~#rndc querylog root@server:~#tail –f /var/log/syslog
Kode program 8 (1) menjelaskan sebelum menampilkan catatan log, querylog harus diaktifkan terlebih dahulu, setelah itu catatan log dapat ditampilkan. Hasil pada Tabel 6 merupakan log query dari DNS Bind, saat admin ingin mengetahui klien dari IP mana saja yang melakukan query ke domain tertentu. Dengan catatan log tersebut admin dapat menambah database blacklist situs yang belum terdaftar sebelumnya dalam blacklist.txt, jika diketahui saat klien mengakses situs-situs yang tidak diperbolehkan untuk diakses oleh siswa. Kumpulan catatan log juga dapat dilihat secara jelas dengan perintah nano /var/log/syslog sehingga di dapatkan hasil pada Tabel 6 : Tabel 6 Hasil querylog received control channel command 'querylog' query logging is now on client 192.168.3.3#58617: view siswa: query: daisy.ubuntu.com.smpanakterang.com IN A + (192.168.3.3) client 192.168.3.5#15319: view siswa: query: www.yahoo.com IN A + (192.168.3.3) client 192.168.3.5#54038: view siswa: query: www.bing.com IN A + (192.168.3.3) client 192.168.3.5#44410: view siswa: query: www.ask.com IN A + (192.168.3.3) client 192.168.3.5#64414: view siswa: query: clients4.google.com IN A + (192.168.3.3) client 192.168.3.1#35078: view siswa: query: youtube.com IN A + (192.168.3.3) client 192.168.3.251#59641: view siswa: query: youtube.com IN A + (192.168.3.3)
Pemblokiran serta me-redirect terkecuali pada alamat situs https seperti media sosial yang menjadi sampel yaitu www.facebook.com dan www.twitter.com. Perbedaan pemblokiran dapat terlihat ketika klien mengakses alamat situs tersebut dari web browser (google chrome, firefox dan internet explorer).
14
Gambar 9 https://facebook.com
Gambar 10 https://twitter.com
Gambar 9 dan 10 merupakan tampilan situs yang terblokir berasal dari protokol https. Dengan adanya perbedaan protokol, pemblokiran pada protokol http dapat langsung di redirect ke DNS server lokal sedangkan pemblokiran pada protokol https tidak dapat di redirect. Hal ini disebabkan “ Apache tidak dapat meneruskan koneksi https ke server tujuan karena semua koneksi adalah koneksi terenkripsi. Saat klien melakukan permintaan https ke server tujuan maka koneksi akan terputus karena zona reverse tidak mengerti respon terenkripsi yang diberikan oleh server tujuan tersebut[2].” Untuk mengatasi hal tersebut DNS smpanakterang.com yang masih protokol http dikonfigurasi menjadi https karena zona reverse membutuhkan modul mod_ssl Apache.
15
Kode program 9 Konfigurasi /etc/apache2/sites-available/default 1. 2. 3. 4. 5.
ServerName smpanakterang.com/ DocumentRoot /var/www/ Redirect / https://smpanakterang.com/
6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33.
ServerAdmin [email protected] ServerName smpanakterang.com:443 DocumentRoot /var/www/ Options FollowSymLinks AllowOverride None Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all SSLEngine on SSLCertificateFile /etc/apache2/ssl/apache.crt SSLCertificateKeyFile /etc/apache2/ssl/apache.key ErrorLog ${APACHE_LOG_DIR}/error.log LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined
Kode Program 9 (1 dan 6) menjelaskan konfigurasi apache untuk mendengarkan dua port, yaitu port 80 bagi protokol http dan port 443 bagi protokol https. Kontainer tag
berisi konfigurasi yang memberitahu apache untuk membelokkan protokol http ke https dengan menggunakan direktif Redirect, setelah dikonfigurasi mendengarkan dan mengalihkan permintaan smpanakterang.com ke port https konfigurasi selanjutnya untuk mendengarkan port 443. Pada baris 27-29, dimulai dengan SSLEngine on akan mengaktifkan modul SSL Apache untuk situs smpanakterang.com, SSLCertificateFile menunjukkan letak berkas sertifikat publik yang berada pada berkas /etc/apache2/ssl/apache.crt dan SSLCertificateKeyFile untuk sertifikat pribadi yang berada pada berkas /etc/apache2/ssl/apache.key.
16
Gambar 11 https://facebook.com
Gambar 12 https://twitter.com
Gambar 11 dan 12 merupakan tampilan situs https yang berhasil diredirect setelah mod_ssl apache diaktifkan dan dikonfigurasi seperti pada kode program 9 karena koneksi terenkripsi terjadi antara klien dengan zona reverse maka konfigurasi https sangat dibutuhkan. Disamping permasalahan perbedaan protokol, timbul permasalahan juga ketika pemblokiran yang sudah berjalan dapat di bypass seperti addon anonymox. Anonymox adalah plugin dari browser yang dapat digunakan untuk mem-bypass filtering terhadap situs yang telah diblokir. Cara kerja anonymox yaitu merubah IP publik yang sebenarnya dengan IP publik yang telah disediakan oleh anonymox. Sehingga secara otomatis website yang ingin dibuka akan di-redirect ke arah IP publik anonymox terlebih dahulu bukan ke arah IP publik provider yang disediakan. Beberapa cara dilakukan untuk menonaktifkan addon anonymox dengan konfigurasi DNS, namun DNS tidak dapat mengatasi hal tersebut. Cara lain adalah dengan menambahkan server proxy, pengujian yang dilakukan dengan adanya server proxy menghasilkan anonymox tidak dapat bekerja, dikarenakan saat klien me-request situs dari browser sebelum di teruskan ke server tujuan, proxy akan mengarahkan jalur permintaan klien ke arah server tujuan, sehingga anonymox tidak dapat aktif (starting secara terus menerus) dan tidak dapat mengarahkan permintaan klien ke arah IP publik yang disediakan oleh anonymox tersebut, seperti pada Gambar 13 : 17
Gambar 13 Pengujian Anonymox
Permasalahan lain yang terjadi juga ketika pengguna internet dapat menggunakan IP untuk mengakses situs yang telah terblokir. Pada saat pertama kali pengguna mengakses IP dari situs yang terblokir maka situs tersebut dapat dituju, dengan permasalahan yang ada dilakukan uji coba untuk mengatasi pengaksesan situs terlarang dari IP. Solusi yang digunakan menggunakan DNS dengan adanya konfigurasi berkas zone reverse untuk alamat IP yang dituju. Seperti IP dari facebook.com yaitu 173.252.74.68 serta masih banyak lagi IP dari facebook.com. Kedua sample IP facebook.com dikonfigurasi dalam named.conf.local yang dapat terlihat pada kode program 10 : Kode program 10 Konfigurasi IP Facebook.com pada /etc/bind/named.conf.local 1. 2. 3. 4.
zone "74.252.173.in-addr.arpa" { type master; file "/etc/bind/db.reversefb"; };
Pada kode program 10 menjelaskan bahwa sample IP dari facebook.com yang akan ditangani oleh BIND dengan type yang menentukan sifat dari zona sebagai master dan file memberitahukan BIND lokasi dari berkas konfigurasi zona reverse untuk alamat IP facebook.com. Kode Program 11
menjelaskan bahwa IP dari facebook.com di pointerkan ke ns.smpanakterang.com, hal ini dikarenakan PTR akan memetakan nomor IP ke nama host. Selanjutnya diperlukan juga konfigurasi db.reversefb, seperti pada kode program 11: Kode program 11 Konfigurasi Zone Reverse pada /etc/bind/db.reversefb 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
1.$TTL @
; @ @ 68 68
13.
604800 SOA 2 604800 86400 2419200 604800 )
ns.smpanakterang.com. root.smpanakterang.com. ( ; Serial ; Refresh ; Retry ; Expire ; Negative Cache TTL
IN IN IN IN www
ns. 173.252.74.68 ns.smpanakterang.com. www.smpanakterang.com. CNAME ns
IN
NS A PTR PTR IN
18
Gambar 14 menjelaskan bahwa IP dari facebook.com telah terpointerkan ke DNS server lokal smpanakterang.com. Selanjutnya ketika diakses dari browser maka alamat tersebut terputus koneksinya. Sehingga didapatkan hasil ketika klien mencoba uji nslookup dari IP facebook.com adalah seperti gambar 14 :
Gambar 14 Pengujian nslookup
Gambar 15 Pengujian akses browser IP facebook.com
Dari Gambar 15 dapat terlihat bahwa IP tersebut tidak dapat diakses lagi seperti pertama kali sebelum dikonfigurasi zone reverse IP facebook.com. Yang menjadi kelemahannya adalah konfigurasi zone masih dilakukan secara manual. Konfigurasi zone reverse dari IP facebook.com tidak akan mempengaruhi domain blacklist facebook.com sehingga ketika klien mencoba mengakses facebook.com akan tetap ter-redirect. 5.
Simpulan
Berdasarkan hasil penelitian dan pengujian yang telah dilakukan, maka dapat diambil kesimpulan yaitu, Transparent DNS dapat membatasi hak akses internet dengan memaksa user menggunakan DNS yang mengandung blacklist yang terdapat dalam database blacklist.txt, perbedaan jalur bagi kedua pengguna internet berdasarkan username dan password dari hotspot yang dibangun dengan bantuan router mikrotik. Konfigurasi https dengan mengaktifkan mod_ssl apache dapat membantu untuk me-redirect situs-situs dengan protokol https. Dari hasil pengujian terhadap sistem terdapat kelemahan 19
sistem, bahwa DNS tidak dapat mengatasi plugin anonymox oleh karena itu dibutuhkan proxy agar bypass terhadap pemblokiran dengan plugin tersebut tidak dapat berfungsi dan penambahan zone ataupun database blacklist masih secara manual. Pengembangan yang dapat diberikan untuk penelitian lebih lanjut yakni, web interface yang terintegrasi dengan sistem dapat dimodifikasi tidak hanya dengan index.html tetapi bisa juga dengan css, php, serta database mysql dengan tujuan mempermudah admin, bagi yang masih awam terhadap server CLI sehingga untuk meng-update database, melihat, mengedit ataupun menghapus dapat dilakukan dengan mudah, hal yang demikian juga dapat dikembangkan untuk logging. 6.
Daftar Pustaka
[1]
Reza, Muhammad Faruq. 2012. Penggunaan Mikrotik RouterOS Untuk Membatasi Akses Situs Jejaring Sosial, Jurnal, Semarang: Universitas Diponegoro. Ermawati, Eva. 2014. Analisis Dan Perancangan Pengontrolan Trafik Jaringan Internet Terhadap User Menggunakan Mikrotik Dan Server Linux (Studi Kasus : SMPN 2 Depok), Jurnal, Yogyakarta: AMIKOM Yogyakarta. Cartealy, Imam. 2013. Linux Networking: Ubuntu, Kubuntu,Debian,dll. Jakarta: Jasakom. Shaikh, Anees.,dkk.2000. On The Effectiveness Of DNS-based Server Solution.Tersedia pada : http://research.microsoft.com/. Diakses pada tanggal 10 November 2015. Kemkominfo. 2013. Open Source di Kominfo. Tersedia pada : http:// http://kominfo.go.id//. Diakses tanggal 5 Agustus 2015. Perpustakaanku. 2015. Panduan Lengkap Mikrotik. Tersedia pada : http://www.perpustakaan-ku.com/. Diakses tanggal 5 Agustus 2015. Aitchison, Ron. 2011. Pro DNS and Bind 10. Tersedia pada : https://books.google.co.id.Diakses tanggal 5 Agustus 2015. Cisco. 2014. IP Addressing: DNS Configuration Guide, CISCO IOS Release 15M & T. Murdoch, Steven.,dkk.2007. Tools and Technology Of Internet Filtering. Tersedia pada : http://sec.cs.ucl.ac.uk/. Diakses pada tanggal 10 November 2015. Otto, Jhon.,dkk.2012. Namehelp: Intelligent Client-Side DNS Resolution. Tersedia pada : http://aqualab.cs.northwestern.edu/. Diakses pada tanggal 10 November 2015.
[2]
[3] [4]
[5] [6] [6] [7] [8]
[9]
20