TUGAS AKHIR PROTOTIPE SMS REPORT PORTABEL MENGGUNAKAN RASPBERRY PI PROTOTYPE OF PORTABLE SMS REPORT USING RASPBERRY PI Diajukan untuk memenuhi salah satu syarat memperoleh gelar SarjanaTeknik Informatika
Disusun Oleh :
Nama
: Azmi Analis Syuhada
NIM
: A11.2011.05901
Program Studi : Teknik Informatika – S1
FAKULTAS ILMU KOMPUTER UNIVERSITAS DIAN NUSWANTORO SEMARANG TAHUN 2014
i
PERSETUJUAN SKRIPSI
PROTOTIPE SMS REPORT PORTABEL MENGGUNAKAN RASPBERRY PI
Nama
: Azmi Analis Syuhada
NIM
: A11.2011.05901
Program Studi
: Teknik Informatika
Fakultas
: Ilmu Komputer
Judul Tugas Akhir : Prototipe SMS Report Portabel Menggunakan Raspberry Pi
Tugas Akhir ini telah diperiksa dan disetujui, Semarang, 6 Maret 2015
Menyetujui :
Mengetahui :
Pembimbing
Dekan Fakultas Ilmu Komputer
L. Budi Handoko, M.Kom.
Dr. Abdul Syukur
ii
PENGESAHAN DEWAN PENGUJI
SKRIPSI PROTOTIPE SMS REPORT PORTABEL MENGGUNAKAN RASPBERRY PI
Nama
: Azmi Analis Syuhada
NIM
: A11.2011.05901
Program Studi
: Teknik Informatika
Fakultas
: Ilmu Komputer
Judul Tugas Akhir : Prototipe SMS Report Portabel Menggunakan Raspberry Pi
Tugas akhir ini telah diujikan dan dipertahankan dihadapan Dewan Penguji pada Sidang tugas akhir tanggal 6 Maret 2015. Menurut pandangan kami, tugas akhir ini memadai dari segi kualitas maupun kuantitas untuk tujuan penganugrahan gelar Sarjana Komputer (S.Kom.)
Semarang, 6 Maret 2015 Dewan Penguji:
Suprayogi, M.Kom
Noor Ageng Setiyanto, M.Kom
Anggota
Anggota
Desi Purwanti Kusumaningrum, M.Kom Ketua Penguji
iii
PERNYATAAN KEASLIAN SKRIPSI
Sebagai mahasiswa Universitas Dian Nuswantoro, yang bertanda tangan di bawah ini, saya: Nama : Azmi Analis Syuhada NIM
: A11.2011.05901
Menyatakan bahwa karya ilmiah saya yang berjudul: “PROTOTIPE SMS REPORT PORTABEL MENGGUNAKAN RASPBERRY PI” merupakan karya asli saya (kecuali cuplikan dan ringkasan yang masingmasing telah saya jelaskan sumbernya dan perangkat pendukung seperti web cam dll). Apabila di kemudian hari, karya saya disinyalir bukan merupakan karya asli saya, yang disertai dengan bukti-bukti yang cukup, maka saya bersedia untuk dibatalkan gelar saya beserta hak dan kewajiban yang melekat pada gelar tersebut.Demikian surat pernyataan ini saya buat dengan sebenarnya.
Dibuat di
: Semarang
Pada tanggal : 6 Maret 2015 Yang Menyatakan
Azmi Analis Syuhada
iv
PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Sebagai mahasiswa Universitas Dian Nuswantoro, yang bertanda tangan di bawah ini, saya : Nama : Azmi Analis Syuhada NIM
: A11.2011.05901
demi mengembangkan Ilmu Pengetahuan, menyetujui untuk memberikan kepada Universitas Dian Nuswantoro Hak Bebas Royalti Non-Ekslusif (Non-exclusive Royalty-Free Right) atas karya saya yang berjudul : PROTOTIPE SMS REPORT PORTABEL MENGGUNAKAN RASPBERRY PI beserta perangkat yang diperlukan (bila ada). Dengan Hak Bebas Royalti NonEkslusif ini Universitas Dian Nuswantoro berhak untuk menyimpan, mengcopy ulang (memperbanyak), menggunakan, mengelolanya dalam bentuk pangkalan data (database), mendistribusikannya dan menampilkan/mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya selama tetap mencantumkan nama saya sebagai penulis/pencipta.
Saya bersedia untuk menanggung secara pribadi, tanpa melibatkan pihak Universitas Dian Nuswantoro, segaka bentuk tuntutan hukum yang timbul atas pelanggaran Hak Cipta dalam karya ilmiah saya ini. Demikian surat pernyataan ini saya buat dengan sebenarnya.
Dibuat di
: Semarang
Pada tanggal : 6 Maret 2015 Yang menyatakan,
Azmi Analis Syuhada
v
UCAPAN TERIMA KASIH Dengan memanjatkan puji syukur kehadirat Allah SWT. Tuhan Yang Maha Pengasih dan Maha Penyayang yang telah melimpahkan segala rahmat, hidayah dan inayah-Nya kepada penulis sehingga laporan tugas akhir dengan judul “PROTOTIPE SMS REPORT PORTABEL MENGGUNAKAN RASPBERRY PI” dapat penulis selesaikan sesuai dengan rencana karena dukungan dari berbagai pihak yang tidak ternilai besarnya. Oleh karena itu penulis menyampaikan terimakasih kepada: 1. Dr.Ir. Edi Noersasongko,M.Kom, selaku Rektor Universitas Dian Nuswantoro Semarang. 2. Dr. Abdul Syukur, selaku Dekan Fakultas Ilmu Komputer. 3. Dr. Heru Agus Santoso,M.Kom, selaku Ka.Progdi Teknik Informatika. 4. L.Budi
Handoko,M.Kom
selaku
pembimbing
tugas
akhir
yang
memberikan ide penelitian, memberikan informasi referensi yang penulis butuhkan dan bimbingan yang berkaitan dengan penelitian penulis. 5. Dosen-dosen pengampu di Fakultas Ilmu Komputer Teknik Informatika Universitas Dian Nuswantoro yang telah memberikan ilmu dan pengalamannya
masing-masing,
sehingga
penulis
dapat
mengimplementasikan ilmu yang telah disampaikan. 6. Bapak Muhib dan Ibu Toipah serta Mas Faiz Alfiansyah yang telah memberikan dukungan baik Moril maupun Materiil. 7. Pihak-pihak yang tidak bisa penulis sebutkan satu persatu. Semoga Tuhan Yang Maha Esa memberikan balasan yang lebih besar kepada beliau-beliau, dan pada akhirnya penulis berharap bahwa penulisan laporan tugas akhir ini dapat bermanfaat dan berguna sebagaimana fungsinya.
vi
RINGKASAN
Server log merupakan sebuah sistem komputer yang menampung aktivitasaktivitas lalu lintas jaringan pada router. Server log dapat dijadikan sebagai sumber terpercaya apabila sebuah sistem jaringan komputer telah diserang oleh peretas. Melalui server log inilah administrator jaringan dapat mengetahui semua yang dilakukan oleh peretas tersebut. Sistem deteksi dini merupakan sebuah sistem yang dapat memberitahukan suatu anomali atau gangguan pada sistem kepada administrator jaringan, sehingga administrator jaringan dapat segera menangani anomali atau gangguan tersebut sesegera mungkin dan dapat mempermudah administrator jaringan dapat memantau jaringan tersebut ketika tidak berada didalam area kerjanya. Pada tugas akhir ini, peneliti bermaksud untuk membuat sebuah prototipe sistem deteksi dini portabel yang dikirimkan melalui sms kepada administrator jaringan ketika terjadi anomali atau gangguan pada sistem jaringan yang ditangani. Sistem ini bekerja dengan memantau semua server dan router yang tersambung dalam sebuah jaringan lalu melaporkan melalui sms kepada administrator jaringan ketika salah satu atau lebih server mati secara mendadak dengan menggunakan protokol ICMP atau PING sehingga administrator jaringan dapat sesegera mungkin menangani gangguan tersebut. Proposal tugas akhir ini akan membahas metode yang digunakan dalam prototipe tersebut dan implementasinya. Hal-hal yang apa yang telah dilakukan dan apa yang belum dilakukan dalam pembuatan prototipe ini akan diulas pada bagian akhir tugas akhir ini.
vii
DAFTAR ISI TUGAS AKHIR ....................................................................................................... i PERSETUJUAN SKRIPSI ..................................................................................... ii PENGESAHAN DEWAN PENGUJI .................................................................... iii PERNYATAAN ..................................................................................................... iv KEASLIAN SKRIPSI ............................................................................................ iv PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS .............................................................................. v UCAPAN TERIMA KASIH .................................................................................. vi RINGKASAN ....................................................................................................... vii DAFTAR ISI ........................................................................................................ viii DAFTAR TABEL .................................................................................................. xi DAFTAR GAMBAR ............................................................................................ xii BAB I ...................................................................................................................... 1 PENDAHULUAN .................................................................................................. 1 1.1.
Latar Belakang Masalah ........................................................................... 1
1.2.
Rumusan Masalah ..................................................................................... 3
1.3.
Batasan Masalah ....................................................................................... 3
1.4.
Tujuan Penelitian ...................................................................................... 4
1.5.
Manfaat Penelitian .................................................................................... 4
BAB II ..................................................................................................................... 6 TINJAUAN PUSTAKA DAN LANDASAN TEORI ............................................ 6 2.1.
Tinjauan Studi ........................................................................................... 6
2.2.
Tinjauan Pustaka ....................................................................................... 8 2.2.1. Jaringan Komputer .........................................................................8 2.2.2. Firewall ..........................................................................................9 2.2.3. Log ...............................................................................................10 2.2.4. Server ...........................................................................................10 2.2.5. SMS..............................................................................................11 2.2.6. Sistem Operasi Raspbian .............................................................11 2.2.7. Rsyslog .........................................................................................12
viii
2.2.8. GNU Bash ....................................................................................12 2.2.9. MySQL.........................................................................................12 2.2.10. Gammu .........................................................................................13 2.3.
Kerangka Pemikiran................................................................................ 13
BAB III ................................................................................................................. 14 METODE PENELITIAN ...................................................................................... 14 3.1.
Instrumen Penelitian ............................................................................... 14 3.1.1. Perangkat Keras ...........................................................................14 3.1.2. Perangkat Lunak ..........................................................................14
3.2.
Prosedur Pengambilan Data .................................................................... 15
3.3.
Teknik Analisis Data............................................................................... 15
3.4.
Model atau Metode yang diusulkan ........................................................ 16
3.5.
Eksperimen dan Cara Pengujian Model .................................................. 20
BAB IV ................................................................................................................. 20 IMPLEMENTASI DAN HASIL PENELITIAN .................................................. 20 4.1.
Perancangan Prototipe SMS Report Portabel ......................................... 20 4.1.1. Analisis Kebutuhan Hardware .....................................................20 4.1.2. Analisis Kebutuhan Software.......................................................20 4.1.3. Arsitektur dan Topologi Jaringan ................................................21
4.2.
Implementasi Prototipe SMS Report Portabel ........................................ 22 4.2.1. Instalasi Sistem Operasi ...............................................................22 4.2.2. Konfigurasi IP Address ................................................................22 4.2.3. Konfigurasi RSYSLOG ...............................................................23 4.2.4. Konfigurasi Remote Logging.......................................................24 4.2.5. Konfigurasi Log Rotate ................................................................25 4.2.6. Konfigurasi Gammu .....................................................................26 4.2.7. Konfigurasi Database ...................................................................28 4.2.8. Konfigurasi Dynamic DNS ..........................................................28 4.2.9. Konfigurasi Script SMS Report ...................................................30
4.3.
Pengujian dan Analisa Prototipe SMS Report Portabel .......................... 32 4.3.1. Log Disimpan Dalam Database ...................................................33 ix
4.3.2. Pengujian Gammu Untuk Kirim SMS .........................................34 4.3.3. Pengujian Dynamic DNS .............................................................35 4.3.4. Pengujian Script Monitoring Jaringan .........................................37 BAB V................................................................................................................... 40 KESIMPULAN DAN SARAN ............................................................................. 40 5.1.
KESIMPULAN ....................................................................................... 40
5.2.
SARAN ................................................................................................... 40
JADWAL PENYUSUNAN TUGAS AKHIR ...................................................... 41 DAFTAR PUSTAKA ........................................................................................... 42 LAMPIRAN .......................................................................................................... 44
x
DAFTAR TABEL Tabel 2.1 Daftar Penelitian ..................................................................................... 7 Tabel 4.1. Hasil Pengujian Prototipe SMS Report Portabel ................................. 39 Tabel 3.1. Jadwal Penyusunan Tugas Akhir ......................................................... 41
xi
DAFTAR GAMBAR Gambar 3.1. Konsep Rsyslog ................................................................................ 16 Gambar 3.2. Perancangan Sistem SMS Report ..................................................... 17 Gambar 3.3. Simulasi PING Pada Server ............................................................. 18 Gambar 3.4. Respon Ketika Ada Server Yang Mati ............................................. 19 Gambar 3.5. SMS Yang Diterima Oleh Administrator Jaringan .......................... 19 Gambar 3.3. Flowchart Perancangan SMS Report ............................................... 20 Gambar 4.1 Topologi Jaringan .............................................................................. 21 Gambar 4.2. Instalasi Raspbian Wheezy............................................................... 22 Gambar 4.3. Konfigurasi IP Address Pada Server Log ........................................ 23 Gambar 4.4. Konfigurasi IP Address Pada Router ............................................... 23 Gambar 4.5. Konfigurasi Rsyslog pada Server Log ............................................. 24 Gambar 4.6. Konfigurasi Remote Logging ........................................................... 24 Gambar 4.7. Konfigurasi Rules Aktivitas Router ................................................. 25 Gambar 4.8. Konfigurasi Log Rotate .................................................................... 26 Gambar 4.9. Konfigurasi Modem Untuk Gammu ................................................ 26 Gambar 4.10. Deteksi Modem USB ..................................................................... 27 Gambar 4.11. Konfigurasi File gammu-smsdrc .................................................... 27 Gambar 4.12. Menambah Script Baru Untuk Dynamic DNS ............................... 29 Gambar 4.13. Script Dynamic DNS ...................................................................... 29 Gambar 4.14. Penjadwalan Untuk Menjalankan Script Dynamic DNS ............... 30 Gambar 4.15. Log Script Dynamic DNS .............................................................. 30 Gambar 4.16. Script SMS Report ......................................................................... 32 Gambar 4.17. Penjadwalan Script SMS Report .................................................... 32 Gambar 4.19. Log-log MikroTik Dalam Database MySQL ................................. 34 Gambar 4.20. Service Gammu .............................................................................. 34 Gambar 4.10. Deteksi Modem USB ..................................................................... 34 Gambar 4.21. Uji Gammu Untuk Kirim SMS ...................................................... 35 Gambar 4.22. Hasil Pengujian SMS Gateway ...................................................... 35 Gambar 4.23. Pengujian Ping Domain azmi.ns01.info ......................................... 36 Gambar 4.24. Tampilan Winbox ........................................................................... 36 xii
Gambar 4.25. Hasil Pengujian Dynamic DNS ...................................................... 37 Gambar 4.26. Salah Satu IP Di Non-aktifkan ....................................................... 38 Gambar 4.27. Hasil Pengujian Script SMS Report ............................................... 38
xiii
BAB I PENDAHULUAN 1.1. Latar Belakang Masalah Kemajuan ilmu pengetahuan dan teknologi berkembang pesat saat ini, tuntutan akan kebutuhan akses informasi berupa data dalam kehidupan sehari-hari juga sangat meningkat. Begitu juga perkembangan teknologi pada sistem deteksi dini pada jaringan komputer baik itu internet maupun intranet ketika terjadi serangan oleh pihak yang tidak berwenang ataupun kerusakan perangkat keras dari infrastruktur yang telah dibangun. Dalam perkembangan sistem deteksi dini, salah satu penelitian berjudul “Design and Implementation of a Distributed Early Warning System Combined with Intrusion Detection System and Honeypot” oleh (PeiSheng Huang, Chung-Huang Yang, Tae-Nam Ahn) menyatakan bahwa penggunaan firewall dan teknologi intrusion detection tradisional tidak bisa cocok dengan perubahan yang cepat ini. Attacker akan diberitahu bahwa firewall memungkinkan layanan yang ada dapat diakses dari luar sehingga Attacker dapat mengakses server internal tersebut untuk serangan berikutnya. Server merupakan sebuah sistem komputer yang menyediakan jenis layanan dalam sebuah jaringan komputer [1]. Kemampuan dalam pelaporan tentang terjadinya serangan pada jaringan dan infrastrukturnya sangat penting untuk seorang administrator dan pengelola infrastruktur jaringan tersebut. Dalam penelitian yang berjudul
“A
DSL
for
Intrusion
Detection
Based
on
Constraint
Programming” oleh (Pedro D.Salgueiro, Salvador P.Abreu) menyatakan bahwa untuk mencegah degradasi jaringan komputer atau bahkan kegagalan, jaringan terus menerus dipantau untuk mendiagnosa fungsi dan integritas. Sistem dan aplikasi monitor jaringan dirancang untuk melakukan tugas-tugas pemantauan jaringan pada jaringan komputer. IDS terus menerus memantau perangkat jaringan dan layanan dalam rangka untuk mendeteksi kemungkinan anomali. IDS (Intrusion Detection System) adalah
1
2
aplikasi yang berfokus pada pemantauan lalu lintas dan memeriksa lalu lintas untuk mencari anomali atau komunikasi yang tidak diinginkan [2]. Portabilitas dan fleksibilitas sistem sangat penting karena dapat mengurangi biaya serta menambah efisiensi waktu, maka dalam penelitian yang berjudul “Implementation of OpenWrt-based IP PnP Gateway” oleh (Yun-Yu Lee, Ing-Yi Chen, Sy-Yen Kuo, Hsi-Hai Liu, Yuh-Rong Leu) menyatakan bahwa mengelola dan mengendalikan pengguna hotspot adalah masalah yang sangat penting dan membutuhkan biaya yang tidak sedikit, maka dari itu masalah tersebut dapat ditangani dengan menggunakan portabilitas platform open source yaitu OpenWRT dengan ChilliSpot Captive Portal yang berfungsi sebagai akses kontrol yang terintegrasi, Dynamic DNS Server dan Client yang berfungsi sebagai penyedia alamat IP yang dapat memperbarui secara otomatis ketika terjadi perubahan maka Dynamic DNS client akan mengirimkan permintaan pembaruan IP kepada Dynamic DNS Server. Dengan menambahkan fungsi diatas, gateway akan menjadi Network Access Control Gateway. Setelah menambahkan fitur tersebut, jalur access point umum dapat diubah ke dalam Network Access Control Gateway. Akhirnya, dalam rangka memberikan fleksibilitas untuk membiarkan gateway menjadi access point umum, IP PnP (Plug and Play) akan memberikan kenyamanan penggunaan. ChilliSpot Captive Portal adalah captive portal open source atau LAN nirkabel jalur akses controller yang digunakan untuk otentikasi pengguna LAN nirkabel [3]. Kesimpulan dari ketiga penelitian tersebut terdapat teknik yang dapat digunakan untuk sistem deteksi dini pada layanan jaringan komputer yang fleksibel dan portabel. Penerapan sistem deteksi dini melalui SMS pada server dan router yang terdapat pada infrastruktur jaringan komputer ini berguna jika sistem tersebut
mati
secara
mendadak
dapat
segera
ditangani
dengan
memanfaatkan informasi yang dikirimkan melalui sms dan Server log sebagai mesin pencatat aktivitas, namun sistem yang ada pada saat ini
3
belum efisien karena sistem tersebut tidak portabel, mobilitasnya kurang dan pengaturannya tidak praktis karena sistem tersebut biasanya dipasang di satu mesin yang sama sehingga jika server tersebut rusak maka sistem sms report tersebut juga ikut rusak, dengan menggunakan raspberry pi yang dijadikan sebagai server log atau mesin pencatat aktivitas server lain dan apabila server tersebut rusak atau diserang oleh peretas maka server log tidak terpengaruh karena dipasang secara terpisah. Dibandingkan dengan server log yang digabung dengan satu layanan yang lain dalam satu mesin, maka sistem ini lebih efisien, tidak mengganggu layanan lain, hemat biaya dan tidak memakan tempat pada rak server. Rsyslog sebagai pencatat system log pada server, gammu dan gammu-smsd sebagai sms gateway untuk mengirimkan sms yang berupa informasi bahwa telah terjadi gangguan misalnya router ataupun server mati secara mendadak kepada administrator jaringan akan digunakan dalam penelitian ini. Maka dari itu peneliti mengambil
judul
“PROTOTIPE
SMS
REPORT
PORTABEL
MENGGUNAKAN RASPBERRY PI”. 1.2. Rumusan Masalah Dari uraian latar belakang masalah tersebut diatas maka dapat disimpulkan dan dirumuskan permasalahan yang akan diberikan solusinya oleh peneliti yaitu : Bagaimana merancang sistem deteksi masalah yang efektif dan efisien untuk memberikan notifikasi SMS kepada Administrator Jaringan ketika terjadi masalah pada Server dan Router. 1.3. Batasan Masalah Agar penulisan Laporan Tugas Akhir ini tidak menyimpang dari topik yang diambil, maka ruang lingkup penulisan Laporan Tugas Akhir I ini dibatasi pada : 1.
SMS Report ini hanya dapat digunakan untuk Administrator Jaringan pada router dan server saja.
3
4
2.
Perancangan
dan
penulisan
kode
program
dengan
bahasa
pemrograman Shell dan MySQL sebagai databasenya untuk penyimpanan data. 3.
SMS yang dikirimkan oleh sms gateway menggunakan gammu kepada Administrator Jaringan yaitu ketika server atau router mati secara mendadak.
4.
Pemantauan jaringan hanya dilakukan melalui protokol ICMP atau PING saja.
5.
Dalam Laporan Tugas Akhir ini, tidak membahas secara detail mengenai konsep sistem deteksi dini selain SMS Report.
6.
Peneliti menggunakan Raspberry Pi Model B+ sebagai server log untuk penyimpanan seluruh aktifitas router dan router yang digunakan adalah MikroTik bukan router yang lain.
7.
Sistem operasi yang digunakan pada server log menggunakan Raspbian yang merupakan distro linux khusus untuk Raspberry Pi.
8.
Pada penelitian ini tidak difokuskan pada keamanan server ataupun router.
1.4. Tujuan Penelitian Berdasarkan perumusan masalah dan pembatasan masalah yang ada, maka dapat dideskripsikan dan disimpulkan tujuan dari penelitian ini adalah : 1.
Merancang dan membuat sistem deteksi dini berupa SMS Report untuk administrator jaringan.
2.
Penerapan rsyslog, shell script, dan gammu sebagai aplikasi pencatat log, pemantauan jaringan, dan pengiriman sms berupa informasi tentang kondisi server atau router apakah dalam keadaan menyala atau mati kepada administrator jaringan.
1.5. Manfaat Penelitian 1.
Bagi Akademik
4
5
a.
Menambah literatur kepustakaan di perpustakaan Universitas Dian Nuswantoro yang dapat digunakan sebagai gambaran atau penunjuk dalam membuat Laporan Tugas Akhir.
b.
Sebagai tolak ukur kemampuan mahasiswa serta sarana untuk mengukur sejauh mana pemahaman dan penguasaan materi kuliah yang diberikan dalam menuntuk ilmu di Universitas Dian Nuswantoro.
c.
Dapat dijadikan bahan informasi dan bahan referensi serta kerangka acuan bagi pihak yang membutuhkan.
2.
Bagi Administrator Jaringan a.
Menerapkan sistem deteksi dini pada router dan server pada jaringan yang dikelola.
b.
Mengimplementasikan rsyslog dan gammu sebagai aplikasi pencatatan aktifitas pada router dan pengiriman sms tentang adanya anomali atau gangguan pada router yang digunakan.
3.
Bagi Penulis a.
Untuk menambah pengetahuan penulis dibidang jaringan komputer khususnya bagaimana membuat sistem deteksi dini yang baik dan efisien.
b.
Sebagai bahan acuan atau penelitian pendahuluan untuk penelitian selanjutnya.
c.
Dengan menyusun Laporan Tugas Akhir ini, penulis dapat mengembangkan ilmu tentang jaringan komputer yang telah diberikan pada masa kuliah.
5
BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI
2.1. Tinjauan Studi Penelitian yang berhubungan dengan topik yang penulis angkat salah satunya penelitian yang berjudul “SMS Mobile Botnet Using A Multi-Agent System : Research In Progress”. Penelitian tersebut membahas tentang sebuah sistem yang berfungsi untuk mendeteksi SMS Botnet dan mengidentifikasi cara-cara untuk memblokir serangan serta mencegah kerusakan yang disebabkan oleh serangan tersebut. Metode yang dikembangkan adalah model hybrid adaptive yang menggunakan kombinasi metode signature-based dan anomaly-based. Model ini dirancang untuk mengenali SMS berbahaya dengan menerapkan analisis perilaku untuk menemukan korelasi antara pesan SMS yang mencurigakan dan melaporkannya. Smartphone Android dapat digunakan dalam sistem ini karena diciptakan untuk melaksanakan deteksi anomali yang kuat dan efisien. Sebuah sistem multi-agen dapat dipilih untuk melakukan deteksi ringan tanpa mengurangi banyak sumber daya pada smartphone seperti baterai dan memori [4]. Penelitian kedua berjudul “Implementation of OpenWrt-based IP PnP Gateway”. Penelitian tersebut membahas tentang implementasi kontrol akses wireless hotspot gateway dibawah platform Open Source-OpenWRT, gateway tersebut memiliki client RADIUS untuk berkomunikasi dengan server RADIUS, mekanisme captive portal untuk memperkuat akses kontrol, klien DNS dinamis untuk memecahkan masalah perangkat yang memiliki IP Dinamis yang sulit dikendalikan dan dikelola. Dan akan memimiliki konektivitas SSH dan Halaman Web GUI. Selain itu, integrasi IP PnP (plug and play IP) ke gateway untuk tujuan kenyamanan penggunaan [5].
6
7
Dari Tinjauan studi diatas dan referensi penelitian yang sudah ada berikut adalah State of the art tabel penelitian (tabel 2.1) yang dijabarkan oleh penulis : Tabel 2.1 Daftar Penelitian No 1.
Peneliti Yun-Yu Lee, IngYi Chen, Sy-Yen Kuo, Hsi-Hai Liu, Yuh-Rong Leu.
Judul
Tool
Hasil
Implementation of
OpenWRT,
Kemudahan kontrol
OpenWrt-based IP
Captive
Hotspot Access
PnP Gateway
Portal,
Gateway dengan
FreeRADIUS,
menggunakan IP
ChiliSpot.
PnP sehingga mendukung fleksibilitas dan portabilitas dalam penggunaannya.
2.
Abdullah J.
SMS Mobile Botnet
Android,
Deteksi anomali
Alzahrani, Ali A.
Detection Using A
SMS Agent.
SMS yang
Ghorbani.
Multi-Agent System:
mencurigakan dan
Research in Progress
membahayakan dengan sistem Multi-Agent dan metode signaturebased serta anomaly-based dan memblokirnya lewat Central-Server.
3.
Pedro D.Salgueiro,
A DSL for Intrusion
Prolog
Penggunaan
Salvador P.Abreu
Detection Based on
Programming
Constraint
(2010).
Constraint
Programming untuk
Programming
menggambarkan gangguan jaringan yang tersebar dalam beberapa paket jaringan.
4.
Pei-Sheng Huang,
Design and
Snort,
Kesalahan
Chung-Huang
Implementation of a
Honeypot
pendeteksian positif
Yang, Tae-Nam
Distributed Early
7
dan kesalahan
8
Ahn (2009).
Warning System
pendeteksian negatif
Combined with
dapat dikurangi
Intrusion Detection
dengan
System and Honeypot
menggunakan metode hybrid.
5.
Hanang Priambodo (2014).
Rancang Bangun
Python,
Monitoring
Sistem Monitoring
MySQL.
Bandwidth, Listrik,
Bandwidth, Listrik,
dan Temperatur
Dan Temperatur
dapat dipantau
Ruang Berbasis
melalui notifikasi E-
Raspberry Pi Pada
Mail dan SMS.
Gedung Pusat Data Universitas Lampung
2.2. Tinjauan Pustaka 2.2.1.
Jaringan Komputer Jaringan komputer merupakan kumpulan komputer dan alatalat lain yang saling dihubungkan bersama menggunakan media komunikasi tertentu [6]. Penggunaan jaringan memungkinkan antar komputer saling berbagi data atau menggunakan perangkat lunak maupun perangkat keras secara berbagi. Pada saat awal ditemukan jaringan komputer, yang saling terhubung hanyalah beberapa komputer dalam area tertentu yang membentuk suatu jaringan komputer lokal. Kemudian masingmasing jaringan lokal ini saling dihubungkan untuk membentuk suatu jaringan komputer yang lebih besar lagi. Pada masa itu area yang dapat dijangkau oleh jaringan komputer masih terbatas dikarenakan
kendala
infrastruktur.
Sekarang
ini,
dengan
ditemukannya internet maka komputer Di seluruh dunia dapat saling berbagi dan bertukar informasi dengan cepat dan lebih efektif. Perkembangan jaringan komputer ini, menciptakan beberapa alat yang dikembangkan untuk kepentingan sistem jaringan
8
9
komputer. Beberapa alat jaringan komputer diantaranya server, router, kartu jaringan, repeater hingga sistem pengkabelan dan sebagainya. Dengan adanya alat-alat tersebut maka kecepatan yang dapat dicapai untuk pertukaran data semakin tinggi. Teknologi yang digunakan untuk media transmisi juga berkembang semakin baik. Yang semula antar komputer hanya dapat dihubungkan dengan menggunakan kabel, kini bisa menggunakan gelombang elektromagnetik yang sering disebut dengan jaringan wireless. 2.2.2.
Firewall Firewall adalah sebuah peralatan komputer dengan perangkat keras dan / atau perangkat lunak yang mengurutkan paket jaringan masuk atau keluar (datang ke atau dari jaringan lokal) dan hanya memungkinkan melalui mereka dengan kondisi standar tertentu yang cocok [7]. Firewall digunakan untuk membatasi koneksi dengan cara menolak atau mengijinkan koneksi tertentu. Sebagai contoh koneksi dengan tujuan ke web server dengan menggunakan port 80 ke dalam jaringan DMZ tentu saja diijinkan karena server kita menyediakan layanan tersebut. Namun koneksi lain seperti telnet, ataupun layanan yang tidak disediakan oleh server akan ditolak. Hal ini tentu saja akan menambah keamanan sistem yang kita bangun. Jika diilustrasikan, mungkin firewall pada dasarnya bertindak seperti petugas imigrasi yang melakukan pengecekan terhadap lalu lintas orang dan barang ke suatu negara. Apabila orang atau barang tersebut membawa dokumen yang sah dan legal, maka diijinkan untuk masuk. Namun sebaliknya, bila tidak dilengkapi dengan dokumen yang sah dan legal maka ditolak masuk. Firewall akan bertindak sebagai pertahanan pertama host terhadap serangan dari luar.
9
10
2.2.3.
Log Log adalah sumber yang sangat luar biasa informatif dan dapat memberitahu masalah yang terjadi [8]. Sehingga bisa dikatakan, log mungkin bukan merupakan sesuatu hal yang secara teknik menantang bahkan cenderung terabaikan, namun salah satu bagian yang terpenting dari sistem. Karena log mencatat segala sesuatu mengenai sistem, log juga menjadi sasaran utama para peretas untuk menutupi jejak mereka karena log menyimpan catatan kegiatan mereka yang mungkin dapat menyebabkan peretas tersebut dijerat hukum apabila tertangkap. Oleh karena itu ketika sistem teretas, maka seorang admin harus yakin benar bahwa log masih valid dan 100% belum ‘disentuh’ oleh peretas. Jika log sudah tidak dipercaya dapat memberikan informasi yang valid, lalu darimana seorang admin mencari informasi berguna mengenai sistemnya? Jawabannya adalah dari server log. Server log sebaiknya merupakan server yang hanya bertugas untuk menjalankan satu tugas saja. Sehingga ketika sistem utama teretas dan log sistem sudah tidak bisa dipercaya, masih ada log lain yang berfungsi sebagai cadangan dari log sistem utama yang belum tersentuh.
2.2.4.
Server Server merupakan komputer yang berfungsi untuk mengatur, menjadi koordinator, dan memberikan layanan kepada computer lain atau yang disebut computer klien pada sistem jaringan komputer [1]. Server merupakan induk dari semua komputer yang terhubung. Server bertugas menangani penyimpanan, pengolahan, pendistibusian data secara terpusat, juga sebagai pusat aplikasi bersama (shared) serta pintu gerbang menuju internet (gateway).
10
11
2.2.5.
SMS Short Message Service (SMS) adalah kemampuan untuk mengirim dan menerima pesan dalam bentuk teks dari dan kepada ponsel [9]. Teks tersebut bisa terdiri dari kata-kata atau nomor atau kombinasi alphanumeric. SMS diciptakan sebagai standar pesan (message) oleh ETSI (Europesan Telecommunication Standards Institute),
yang
juga
membuat
standar
GSM
yang
diimplementasikan oleh semua operator GSM. SMS yang pertama dikirimkan pada Desember 1992 dari PC ke sebuah ponsel melalui jaringan GSM Vodafone di UK. Setiap Pesan maksimal terdiri dari 160 karakter jika menggunakan alphabet Latin, dan 70 karakter jika menggunakan alphabet non-Latin seperti huruf Arab atau China. Short Message Service atau biasa disingkat SMS merupakan sebuah layanan yang banyak diaplikasikan pada sistem komunikasi tanpa kabel (wireless), memungkinkan dilakukannya pengiriman pesan dalam bentuk alphanumeric antara terminal pelanggan atau antar teminal pelanggan dengan sistem eksternal, seperti e-mail, paging, voice mail, dan lain-lain. Aplikasi SMS merupakan aplikasi yang paling banyak peminat dan penggunanya. Hal ini dapat dibuktikan dengan munculnya berbagai jenis aplikasi yang memanfaatkan fasilitas SMS. 2.2.6.
Sistem Operasi Raspbian Raspbian adalah sistem operasi bebas berbasis Debian dioptimalkan untuk perangkat keras Raspberry Pi [10]. Sebuah sistem operasi adalah seperangkat program dasar dan utilitas yang membuat Raspberry Pi berjalan. Namun, Raspbian menyediakan lebih dari OS murni: ia datang dengan lebih dari 35.000 paket, precompiled paket software dalam format yang bagus untuk kemudahan instalasi pada Raspberry Pi. Membangun awal lebih dari 35.000 paket Raspbian, dioptimalkan untuk kinerja terbaik untuk Raspberry Pi, selesai pada
11
12
Juni
2012
mendatang
Namun,
Raspbian
masih
dalam
pengembangan aktif dengan penekanan pada peningkatan stabilitas dan kinerja dari sebanyak paket Debian mungkin. Catatan: Raspbian tidak berafiliasi dengan Raspberry Pi Foundation.
Raspbian
dibuat
oleh
kecil,
berdedikasi
tim
pengembang yang merupakan fans dari hardware Raspberry Pi, tujuan pendidikan dari Raspberry Pi Foundation dan, tentu saja, Proyek Debian. 2.2.7.
Rsyslog Rsyslog merupakan syslogd ditingkatkan mendukung, antara lain, MySQL, PostgreSQL, tujuan log failover, syslog / tcp, format yang baik pengendalian output, cap waktu presisi tinggi, antri operasi dan kemampuan untuk menyaring pada setiap bagian pesan [11]. Hal ini sangat kompatibel untuk stok sysklogd dan dapat digunakan sebagai pengganti drop-in.
2.2.8.
GNU Bash Bash adalah shell proyek GNU. Bash adalah Bourne Again Shell. Bash merupakan shell sh-kompatibel yang menggabungkan fitur yang berguna dari shell Korn (ksh) dan shell C (csh). Hal ini dimaksudkan untuk menyesuaikan diri dengan IEEE POSIX P1003.2 / ISO 9945,2 Shell dan Alat standar. Ia menawarkan perbaikan fungsional atas sh untuk kedua program dan penggunaan interaktif. Selain itu, sebagian script sh dapat dijalankan oleh Bash tanpa modifikasi [12].
2.2.9.
MySQL MySQL adalah sistem manajemen database SQL Open Source yang paling populer, dikembangkan, didistribusikan, dan didukung oleh Oracle Corporation [13]. Database adalah kumpulan data terstruktur. Ini mungkin apa saja dari daftar belanja sederhana untuk sebuah galeri gambar atau sejumlah besar informasi di jaringan perusahaan.
12
13
Untuk menambahkan, akses, dan proses data yang disimpan dalam database komputer, anda memerlukan sistem manajemen database seperti MySQL Server. Karena komputer yang sangat baik dalam menangani sejumlah besar data, sistem manajemen database memainkan peran sentral dalam komputasi, sebagai utilitas standalone, atau sebagai bagian dari aplikasi lain. 2.2.10. Gammu Gammu adalah library dan command line utility untuk ponsel. Hal ini dirilis di bawah GNU GPL versi 2. Ini telah dimulai oleh Marcin Wiacek dan lainnya. Awalnya kode didasarkan pada Gnokii dan proyek MyGnokii terakhir. Gammu adalah mantan (sampai versi 0.58) disebut MyGnokii2 [14]. 2.3. Kerangka Pemikiran Berdasarkan dukungan landasan teoritik yang diperoleh dari eksplorasi teori yang dijadikan rujukan konsepsional variabel penelitian, maka dapat disusun Kerangka Pemikiran sebagai berikut : Masalah : Bagaimana merancang sistem deteksi masalah yang efektif dan efisien untuk memberikan notifikasi SMS kepada Administrator Jaringan ketika terjadi masalah pada Server dan Router.
Tujuan : 1. Merancang dan membuat sistem deteksi dini berupa SMS Report untuk administrator jaringan. 2. Penerapan rsyslog dan gammu sebagai aplikasi pencatat log dan pengiriman sms berupa informasi tentang anomali atau gangguan pada router kepada administrator jaringan.
Metode Prototipe Literatur: 1.
SMS Mobile Botnet Detection Using A Multi-Agent System : Research In Progress Implementation of OpenWrt-based IP PnP Gateway
2.
Pembuatan prototipe sms report dengan memanfaatkan rsyslog-mysql dan gammu-smsd serta shell scripting untuk pemantauan jaringan pada raspberry pi.
Hasil: 1. 2.
Mengirimkan SMS Report kepada Administrator Jaringan ketika ada anomali atau gangguan pada router atau server. Administrator Jaringan dapat memanfaatkan informasi dari sms yang dikirimkan dari sistem sehingga dapat dengan cepat menangani gangguan yang ada.
13
BAB III METODE PENELITIAN Pada bab ini dijelaskan mengenai metode penelitian yang digunakan dalam penulisan Tugas Akhir ini. 3.1. Instrumen Penelitian Meliputi bahan dan peralatan dalam melakukan penelitian, dalam penelitian ini diperlukan beberapa perangkat agar penelitian dapat berjalan dengan lancar dan sesuai dengan tema penelitian. Perangkat tersebut dibagi menjadi dua yaitu perangkat keras dan perangkat lunak. 3.1.1.
Perangkat Keras Merupakan perangkat keras yang digunakan dalam penelitian ini. Hardware yang digunakan antara lain : 1. Raspberry Pi Model B+ dengan spesifikasi sebagai berikut : a. 700 MHz Low Power ARM1176JZFS Applications Processor. b. 512 MB SDRAM c. 16 GB MicroSDHC 2. MikroTik RB751U-2HnD 3. Switch 8 Port 4. Modem Huawei E220
3.1.2.
Perangkat Lunak Sedangkan perangkat lunak yang digunakan antara lain : 1. Linux Raspbian Wheezy Build 2014-06-20 Paket aplikasi yang diinstal pada Linux Raspbian Wheezy Build 2014-06-20 antara lain : a.
SSH Server
b.
Rsyslog-mysql
c.
Rsyslog
d.
Gammu
e.
Gammu-smsd
f.
GNU Bash 14
15
g.
Apache2
h.
PHP 5
i.
Mysql-Server
j.
Phpmyadmin
2. PuTTY 3.2. Prosedur Pengambilan Data Dalam penelitian ini peneliti menggunakan studi literatur dengan mencari dan mempelajari berbagai informasi tentang sms report dan portabilitasnya melalui buku-buku referensi, makalah, jurnal ilmiah, buku elektronik (e-book), paper, dokumentasi internet, situs-situs website dan tugas akhir dari mahasiswa lain yang memiliki kesamaan topik. Dari studi literatur yang dicari, penulis menggunakan beberapa referensi jurnal salah satunya berjudul “SMS Mobile Botnet Detection Using A Multi-Agent System : Research In Progress” dan jurnal yang lain berjudul “Implementation of OpenWrt-based IP PnP Gateway” 3.3. Teknik Analisis Data Teknik analisis data yang digunakan dalam penelitian ini merujuk pada tujuan penelitian yang sudah dirumuskan, yaitu 1. Server Log melakukan monitoring terhadap server lain atau router dengan cara melakukan ping IP Address masing-masing. 2. Monitoring dilakukan setiap detik dan apabila salah satu server mati maka sistem akan mengirimkan sms secara otomatis. 3. Setiap aktivitas jaringan akan dipantau oleh server log yang kemudian disimpan dalam database MySQL. 4. Database MySQL akan dihapus ketika sudah mencapai ukuran Megabyte tertentu agar disk tidak penuh. Algoritma tersebut diatas dijalankan oleh script sms report menggunakan bahasa pemrograman shell dan rsyslog.
15
16
3.4. Model atau Metode yang diusulkan Model penelitian yang dilakukan oleh peneliti pada penelitian ini yaitu menggunakan model prototipe dan tahapan-tahapannya adalah sebagai berikut :
3.4.1. Pengumpulan Kebutuhan Pada tahapan ini peneliti mulai mengumpulkan kebutuhankebutuhan
untuk
membuat
Prototipe
yang
diusulkan,
dari
pengumpulan hardware dan software seperti yang telah diulas pada instrumen penelitian. 3.4.2. Merancang dan Membuat Prototipe Pada tahap ini peneliti mulai merancang konsep prototipe yang diusulkan dan membuat prototipe dari konsep tersebut. Konsep prototipe dapat dilihat pada gambar dibawah ini :
Gambar 3.1. Konsep Rsyslog
16
17
Gambar 3.2. Perancangan Sistem SMS Report
Server log akan melakukan monitoring melalui protokol ICMP atau PING dengan ditandai menggunakan amplop warna merah yang berjalan pada tiap server dan router pada gambar simulasi dibawah ini:
17
18
Gambar 3.3. Simulasi PING Pada Server Apabila salah satu atau lebih server mati makan mengirimkan respon kepada server sms gateway untuk mengirimkan sms report kepada sms administrator melalui modem GSM yang ditandai dengan gambar amplop warna biru seperti gambar simulasi dibawah ini:
18
19
Gambar 3.4. Respon Ketika Ada Server Yang Mati
Gambar 3.5. SMS Yang Diterima Oleh Administrator Jaringan
19
20
Gambar 3.3. Flowchart Perancangan SMS Report
3.4.3. Uji Coba Prototipe Pada tahap ini peneliti mulai uji coba prototipe yang telah dibuat sebelumnya, kemudian mengevaluasi kerja prototipe. 3.5. Eksperimen dan Cara Pengujian Model Dari metode atau model penelitian yang penulis gunakan maka cara pengujiannya dimulai dari tahap pertama yaitu pengumpulan kebutuhan perangkat keras dan perangkat lunak. Perangkat keras yang digunakan adalah Raspberry Pi Model B+ yang digunakan sebagai Server Log dan SMS Gateway, MikroTik Router sebagai Router, Modem Huawei Vodafone E220 sebagai pengirim SMS, dan Switch 8 Port sebagai penghubung semua perangkat jaringan. Sedangkan kebutuhan perangkat lunak antara lain Raspbian Wheezy sebagai Sistem Operasi Server Log dan SMS Gateway dan PuTTY sebagai aplikasi untuk remote server. Tahap kedua yaitu perancangan konsep dan desain jaringan yang akan digunakan dalam model prototipe yang diusulkan. Tahap ketiga yaitu instalasi dan konfigurasi server sesuai dengan kebutuhan perangkat lunak.
20
21
Tahap keempat yaitu uji coba model prototipe yang telah dibuat dan tahap terakhir yaitu mengevaluasi kerja model prototipe yang telah dibuat.
21
BAB IV IMPLEMENTASI DAN HASIL PENELITIAN 4.1. Perancangan Prototipe SMS Report Portabel Tahap perancangan merupakan tahap merancang perangkat lunak berdasarkan tahapan analisis yang dilakukan. Tujuan dari perancangan ini adalah untuk menghasilkan gambaran dari sistem yang akan dibuat. Gambaran sistem yang dibutuhkan menyediakan satu server log yang berfungsi sebagai pencatat aktivitas trafik data pada jaringan yang dipakai. Topologi yang digunakan dalam perancangan prototipe ini adalah Topologi Star. Rancangan prototipe akan menggunakan Raspberry Pi Model B yang berfungsi sebagai Server Log dan SMS Gateway dengan menggunakan Sistem Operasi Raspbian. Proses perancangan prototipe ini difokuskan pada 3 tahap yaitu analisis kebutuhan hardware, analisis kebutuhan software dan sistem operasi, serta arsitektur dan topologi jaringan. 4.1.1. Analisis Kebutuhan Hardware Dalam membangun prototipe sms report portabel ini beberapa perangkat keras antara lain sebagai berikut : a.
MikroTik RB751U-2HND
b.
Raspberry Pi Model B+
c.
Huawei E220 HSDPA Modem
d.
Switch 16 Port
4.1.2. Analisis Kebutuhan Software Software dan Sistem Operasi yang dibutuhkan dalam pembuatan prototipe ini adalah : a.
Sistem Operasi : Raspbian
b.
SSH Server
c.
Rsyslog-mysql
d.
Rsyslog
e.
Gammu
20
21
f.
Gammu-smsd
g.
Shell Script
h.
Apache2
i.
PHP 5
j.
Mysql-Server
k.
Phpmyadmin
l.
PuTTY
4.1.3. Arsitektur dan Topologi Jaringan Dalam perancangan prototipe ini terdapat router dan server serta client yang terhubung dalam satu jaringan. Router yang digunakan untuk menghubungkan jaringan lokal (LAN) ke jaringan Internet. Server yang berfungsi sebagai Server Log untuk mencatat aktivitas dan lalu lintas data yang ada didalam jaringan tersebut yang ada di router. Sedangkan client berfungsi untuk mengkonfigurasi Router dan Server melalui protokol SSH. Gambar dibawah ini merupakan topologi jaringan yang digunakan dalam prototipe sms report portabel ini :
Gambar 4.1 Topologi Jaringan
21
22
4.2. Implementasi Prototipe SMS Report Portabel Pada bagian akan dijelaskan tahapan implementasi berupa instalasi dan konfigurasi dari tiap komponen sistem dari tahap instalasi sistem operasi sampai dengan pengambilan data. 4.2.1. Instalasi Sistem Operasi Instalasi sistem operasi Raspbian Wheezy dilakukan pada Raspberry Pi. Gambar dibawah ini merupakan hasil instalasi sistem operasi Raspbian Wheezy pada Raspberry Pi :
Gambar 4.2. Instalasi Raspbian Wheezy
4.2.2. Konfigurasi IP Address Tahap selanjutnya adalah konfigurasi IP Address pada Server Log dan Router agar dapat saling berkomunikasi. Konfigurasi IP Address pada Server Log ada di /etc/network/interfaces sedangkan konfigurasi IP Address pada Router ada di menu IP - Addresses. Pada Server Log diisikan IP Address 192.168.100.2/28 dan IP Address Router diisikan 192.168.100.1/28.
22
23
Gambar 4.3. Konfigurasi IP Address Pada Server Log
Gambar 4.4. Konfigurasi IP Address Pada Router
4.2.3. Konfigurasi RSYSLOG RSYSLOG adalah sistem roket-cepat untuk pengolahan log. Rsyslog dalam sistem ini digunakan untuk mencatat semua aktivitas router kemudian diambil parameter-parameter yang dibutuhkan oleh administrator jaringan. Untuk mengkonfigurasi rsyslog dapat melakukan perintah dibawah ini : sudo nano /etc/rsyslog.conf
23
24
Kemudian ganti beberapa baris kode seperti gambar dibawah ini:
Gambar 4.5. Konfigurasi Rsyslog pada Server Log
4.2.4. Konfigurasi Remote Logging Pada tahap selanjutnya adalah konfigurasi remote logging pada router sehingga aktivitas yang ada di router dapat dikirim ke database server log. Untuk mengkonfigurasi remote logging yaitu pada aplikasi winbox kemudian masuk ke menu System – Logging untuk lebih jelasnya seperti gambar dibawah ini :
Gambar 4.6. Konfigurasi Remote Logging
24
25
Gambar 4.7. Konfigurasi Rules Aktivitas Router
4.2.5. Konfigurasi Log Rotate Log Rotate dirancang untuk mempermudah administratis sistem yang menghasilkan sejumlah file log yang besar. Hal ini memungkinkan
untuk
dilakukan
rotasi
otomatis,
kompresi,
penghapusan, dan pesan dari file log. Setiap file log dapat ditangani secara harian, mingguan, bulanan, atau ketika file yang semakin membesar. Untuk mengkonfigurasi Log Rotate dapat dilakukan dengan membuat sebuah file baru di direktori /etc/logrotate.d dengan nama router dengan perintah sebagai berikut : sudo nano /etc/logrotate.d/mysql kemudian untuk detil script yang ada di file router dapat dilihat seperti gambar dibawah ini :
25
26
Gambar 4.8. Konfigurasi Log Rotate
4.2.6. Konfigurasi Gammu Gammu adalah library dan command line utility untuk ponsel. Gammu biasanya digunakan sebagai mesin sms gateway pada sistem operasi yang berbasis Linux/Unix dan Microsoft Windows. Untuk mengkonfigurasi gammu sebagai mesin sms gateway dapat dilakukan beberapa langkah dibawah ini : a. Ketikkan perintah gammu-config untuk mengatur konfigurasi modem yang telah dipasang agar bisa terdeteksi.
Gambar 4.9. Konfigurasi Modem Untuk Gammu
26
27
b. Ketikkan perintah gammu –identify untuk mendeteksi Modem USB yang telah dipasang.
Gambar 4.10. Deteksi Modem USB
c. Edit file gammu-smsdrc pada folder /etc dengan perintah nano /etc/gammu-smsdrc agar gammu bisa terkoneksi dengan database sehingga semua pesan baik pesan masuk dan pesan keluar dapat disimpan kemudian ganti isi file seperti gambar dibawah ini :
Gambar 4.11. Konfigurasi File gammu-smsdrc
27
28
4.2.7. Konfigurasi Database Database yang digunakan adalah MySQL untuk menyimpan log dari rsyslog dan gammu. Kemudian lakukan perintah sebagai berikut untuk membuat database dan konfigurasinya : a. Ketikkan perintah mysql –u root –p kemudian masukkan password MySQL. b. Buat database sms untuk menyimpan pesan masuk dan pesan keluar dari gammu dengan perintah create database sms; c. Keluar dari MySQL dengan perintah quit kemudian import database gammu dari direktori /usr/share/doc/gammusmsd/examples/mysql.sql.zip kemudian lakukan perintah gunzip mysql.sql.zip untuk meng-ekstrak file mysql.sql yang ada didalamnya. d. Import database mysql.sql kedalam database sms dengan menggunakan
perintah
mysql
–u
root
–p
/usr/share/doc/gammu-smsd/examples/mysql.sql
sms
<
kemudian
masukkan password MySQL nya. e. Masuk kedalam MySQL lagi dengan perintah mysql –u root –p mysql kemudian masukkan password MySQL. f. Buat database Syslog dengan perintah create database Syslog; g. Kemudian
berikan
hak
akses
penuh
kepada
user
syslog@localhost dengan perintah GRANT ALL ON Syslog.* TO syslog@localhost IDENTIFIED BY ‘syslog123’; dan flush privileges; 4.2.8. Konfigurasi Dynamic DNS Dynamic DNS adalah layanan yang berfungsi untuk merubah alamat ip publik dinamis menjadi sebuah nama domain yang biasanya digunakan agar server/router yang mempunyai ip publik dinamis dapat di akses melalui internet dengan mudah tanpa harus menghafalkan alamat ip publik dinamis tersebut. Berikut adalah
28
29
langkah-langkah dalam mengkonfigurasi Dynamic DNS pada router MikroTik : a. Masuk ke menu System > Scripts kemudian klik tombol + seperti gambar dibawah ini :
Gambar 4.12. Menambah Script Baru Untuk Dynamic DNS
b. Tempel script konfigurasi Dynamic DNS seperti gambar dibawah ini :
Gambar 4.13. Script Dynamic DNS
29
30
c. Tambahkan konfigurasi penjadwalan agar script dynamic dns dapat berjalan secara otomatis setiap 10 menit, langkahlangkahnya seperti gambar dibawah ini :
Gambar 4.14. Penjadwalan Untuk Menjalankan Script Dynamic DNS
d. Klik menu Log untuk mengetahui apakah script dynamic dns berjalan atau tidak, apabila berjalan maka akan tampil log seperti gambar dibawah ini :
Gambar 4.15. Log Script Dynamic DNS
4.2.9. Konfigurasi Script SMS Report Script SMS Report ini bertujuan untuk melakukan monitoring terhadap server atau router yang tersambung dalam satu jaringan dengan melakukan ping terhadap alamat IP masing-masing server
30
31
dan router. Sehingga ketika salah satu server atau router tersebut mati secara tiba-tiba maka akan mengirimkan sebuah sms kepada administrator jaringan. Langkah-langkah untuk mengkonfigurasinya adalah sebagai berikut : a. Buatlah
file
dengan
nama
cek_server.sh
dengan
menggunakan perintah nano cek_server.sh. b. Ketiklah script seperti yang ada pada gambar dibawah ini kemudian simpan dengan menekan tombol Ctrl + X kemudian tekan Enter : #!/bin/bash LOGDIR="/tmp/" MOBILENUMBER=0819******** PINGCOUNT=4 SERVER="192.168.100.1 192.168.1.254 8.8.8.8" for IP in $SERVER do NOW=$(date +"%Y/%m/%d %H:%M:%S") LOGFILE="$LOGDIR""check-""$IP"".log" CHECK=$(ping -c $PINGCOUNT $IP | grep received | cut -d ',' -f2 | cut -d ' ' -f2) if [ $CHECK -eq 0 ]; then # alert STATUS=0 if [ ! -f $LOGFILE ]; then gammu sendsms TEXT $MOBILENUMBER -text "Alert! Server $IP down." &> /dev/null else LASTSTATUS=$(cat $LOGFILE | cut -d '|' -f2) if [ $STATUS -lt $LASTSTATUS ]; then gammu sendsms TEXT $MOBILENUMBER -text "Alert! Server $IP down." &> /dev/null else LASTTIMEOUT=$(cat $LOGFILE | cut -d '|' -f3 ) if [ ! -f "$LASTTIMEOUT" ]; then STATUS="0|""$NOW"
31
32
else STATUS="0|""$LASTTIMEOUT" fi fi fi else STATUS=1 fi if [ ! -f $LOGFILE ]; then echo -n "" > $LOGFILE fi echo "$NOW|$STATUS" > $LOGFILE done
Gambar 4.16. Script SMS Report
c. Buatlah penjadwalan untuk menjalankan script tersebut setiap menit menggunakan cron dengan mengedit crontab pada direktori /etc dengan perintah nano /etc/crontab yang isinya seperti gambar dibawah ini kemudian simpan dengan kombinasi tombol Ctrl + X lalu tekan Y dan Enter, setelah membuat script lalu restart service cron dengan perintah /etc/init.d/cron restart.
Gambar 4.17. Penjadwalan Script SMS Report
4.3. Pengujian dan Analisa Prototipe SMS Report Portabel Pengujian akan dilaksanakan pada setiap parameter yang dibutuhkan sistem. Untuk parameternya terdiri dari Log yang tersimpan dalam database, tes sms gateway, tes dynamic dns, dan tes script monitoring.
32
33
4.3.1. Log Disimpan Dalam Database Pada pengujian ini dilakukan pengecekan terhadap log-log dari router dan server apakah tersimpan dalam database atau tidak. Sebelum dilakukan pengujian, cek terlebih dahulu apakah service mysql dan rsyslog sudah berjalan pada sistem atau belum. Caranya yaitu dengan menggunakan perintah ps –aux |grep rsyslog dan ps – aux |grep mysql, apabila service tersebut sudah berjalan pada sistem maka akan tampil seperti pada gambar dibawah ini :
Gambar 4.18. Cek Service MySQL dan Rsyslog
Setelah proses cek service mysql dan rsyslog maka langkah selanjutnya adalah pengujian rsyslog dan mysql dalam menyimpan log-log yang ada. Untuk pengujiannya bisa dilihat dari database mysql dengan melakukan penyaringan berdasarkan keyword, disini keyword yang dipakai adalah “MikroTik” (tanpa tanda kutip) yaitu dengan query mysql SELECT * FROM SystemEvents WHERE `FromHost`=”MikroTik”; query tersebut berfungsi untuk mengambil semua record dengan keyword MikroTik dari tabel SystemEvents dan kolom FromHost pada database Syslog. Untuk lebih jelasnya seperti pada gambar dibawah ini :
33
34
Gambar 4.19. Log-log MikroTik Dalam Database MySQL
4.3.2. Pengujian Gammu Untuk Kirim SMS Pada pengujian ini akan dilakukan tes kirim sms pada gammu sebagai mesin sms gateway. Sebelum melakukan pengujian cek terlebih dahulu apakah service gammu sudah berjalan pada sistem atau belum. Cara untuk mengetahui service gammu yang berjalan pada sistem dapat dilakukan dengan perintah ps ax |grep gammu seperti pada gambar dibawah ini :
Gambar 4.20. Service Gammu
Pengujian gammu sebagai mesin sms gateway dapat diuji dengan mengirimkan sms kepada nomor tujuan dengan perintah gammu sendsms TEXT 085742147893 –text “Tes SMS”, namun sebelum mengirim sms pastikan terlebih dahulu modem usb telah terdeteksi dengan baik yaitu dengan menggunakan perintah gammu – identify seperti gambar dibawah ini :
Gambar 4.10. Deteksi Modem USB
34
35
Gambar 4.21. Uji Gammu Untuk Kirim SMS
Gambar 4.22. Hasil Pengujian SMS Gateway
4.3.3. Pengujian Dynamic DNS Dynamic DNS ini dipasang pada router MikroTik sehingga router tersebut dapat diakses melalui internet dengan hanya memanggil nama domain yang telah dibuat sebelumnya. Dalam pengujian ini peneliti menggunakan nama domain azmi.ns01.info yang telah dibuat sebelumnya. Script Dynamic DNS dapat dilihat pada halaman lampiran. Langkah-langkah pengujian dynamic dns
35
36
pertama yaitu dengan memanggil nama domain tersebut dengan cara PING dan login melalui Winbox.
Gambar 4.23. Pengujian Ping Domain azmi.ns01.info
Dari gambar diatas menunjukkan bahwa domain azmi.ns01.info dapat dipanggil dengan ip publik dinamis 118.96.174.155. IP Publik dinamis ini sifatnya berubah-ubah sehingga domain azmi.ns01.info ini sebagai penerjemah ip publik dinamis yang diberikan oleh ISP. Langkah kedua dalam pengujian dynamic dns yaitu dengan login dengan aplikasi Winbox seperti gambar dibawah ini :
Gambar 4.24. Tampilan Winbox
36
37
Gambar 4.25. Hasil Pengujian Dynamic DNS
4.3.4. Pengujian Script Monitoring Jaringan Dalam pengujian ini salah satu alamat IP pada router MikroTik dinon-aktifkan sehingga ketika script ini akan melakukan ping satupersatu terhadap alamat ip yang telah ditentukan akan secara otomatis mengirimkan SMS Report kepada Administrator Jaringan apabila salah satu atau lebih alamat ip yang timeout atau gagal dipanggil. Berikut adalah langkah-langkah pengujiannya : a. Login ke router MikroTik dengan Winbox kemudian nonaktifkan salah satu IP yang ada melalui menu IP > Address.
37
38
Gambar 4.26. Salah Satu IP Di Non-aktifkan b. Langkah kedua yaitu cek pesan masuk pada Handphone, apabila ada pesan masuk seperti gambar dibawah ini maka pengujian Script Monitoring dengan SMS Report berhasil.
Gambar 4.27. Hasil Pengujian Script SMS Report
38
39
Setelah dilakukan uji coba dengan menon-aktifkan salah satu alamat IP pada router MikroTik hasilnya adalah script tersebut melakukan pengecekan terhadap semua alamat IP yang telah ditentukan yaitu dengan keterangan alamat IP 192.168.1.254 adalah alamat IP modem bawaan dari ISP yang peneliti gunakan, sedangkan alamat IP 8.8.8.8 adalah alamat IP google sehingga server log tidak dapat terkoneksi dengan internet karena alamat IP 192.168.100.1 adalah alamat IP Gateway yang berfungsi untuk menghubungkan server log dengan jaringan internet.
NO
PENGUJIAN
HASIL
1.
Server Log
Sesuai
2.
Dynamic DNS
Sesuai
3.
Monitoring
Jaringan
dan Sesuai
SMS Report Tabel 4.1. Hasil Pengujian Prototipe SMS Report Portabel
39
BAB V KESIMPULAN DAN SARAN 5.1. KESIMPULAN Dari hasil pengujian Prototipe SMS Report Portabel Menggunakan Raspberry Pi dapat disimpulkan bahwa sistem dapat berjalan dengan baik namun ada kekurangan dalam sistem ini yaitu USB Modem yang digunakan kadang tidak terdeteksi oleh Gammu sehingga terjadi kendala ketika salah satu server mati maka Administrator Jaringan tidak mendapat SMS Report dari Sistem.
5.2. SARAN Karena selama proses pengujian terdapat masalah dan kekurangan pada prototipe ini maka ada beberapa saran untuk peneliti selanjutnya apabila ingin melakukan riset dengan topik yang sama tentang SMS Report Portabel Menggunakan Raspberry Pi yaitu : 1.
Gunakan Modem USB yang stabil sehingga pengiriman SMS Report lancar.
2.
Monitoring jaringan sebaiknya ditambahkan dengan protokol yang lain misalnya SNMP atau bila perlu tambahkan pendeteksi Intruder yang bisa dilaporkan melalui SMS Report.
3.
Selain menggunakan PING, pemantauan jaringan juga bisa dilakukan berdasarkan layanan seperti layanan web server, mail server, ftp server, dan layanan yang lainnya.
40
41
JADWAL PENYUSUNAN TUGAS AKHIR
Minggu Ke N0 1 2 3
4
5 6 7
Tahap Penelitian
1
2
3
4
5
6
Tahap Identifikasi Masalah Tahap Pencarian Solusi Masalah Tahap Pencarian Landasan Teori Tahap Pencarian Kebutuhan Perangkat Keras dan Perangkat Lunak Tahap Perancangan Konsep Prototipe Tahap Pembuatan Prototipe dan Uji Coba Tahap Penyimpulan Hasil Penelitian
Tabel 3.1. Jadwal Penyusunan Tugas Akhir
41
7
8
9
10
11
DAFTAR PUSTAKA
[1] M. B. Jan Bergstram, HANDBOOK OF NETWORK AND SYSTEM ADMINISTRATION, Amsterdam: Elsevier, 2007. [2] P. D. Salgueiro dan S. P. Abreu, “A DSL for Intrusion Detection Based on Constraint Programming,” p. 224, 2010. [3] M. AB, “Chillispot,” [Online]. Available: http://www.chillispot.org. [Diakses 08 Oktober 2014]. [4] A. J. Alzahrani dan A. A. Ghorbani, “SMS Mobile Botnet Using A MultiAgent System : Research In Progress,” 2009. [5] Y.-y. Lee, I.-Y. Chen, S.-Y. Kuo, H.-H. Liu dan Y.-R. Leu, “Implementation of OpenWrt-based IP PnP Gateway”. [6] Wagito, Jaringan Komputer, Teori dan Implementasi Berbasis Linux, Yogyakarta: Gaya Media, 2007. [7] R. Hertzog dan R. Mas, The Debian Administrator's Handbook, Frexian SARL, 2012. [8] I. Cartealy, Linux Networking : Ubuntu, Kubuntu, Debian, dll, Jasakom, 2013. [9] Hendriansyah, “Implementasi Polling Dengan SMS Gateway Berbasis Web,” 2010. [10] M. Thompson, “Raspbian,” [Online]. Available: http://www.raspbian.org. [Diakses 08 Oktober 2014]. [11] Adiscon GmbH, “Rsyslog,” [Online]. Available: http://www.rsyslog.com. [Diakses 08 Oktober 2014]. [12] GNU Project - Free Software Foundation, “Bash - GNU Project - Free Software Foundation,” [Online]. Available: http://www.gnu.org/software/bash/. [Diakses 20 Oktober 2014].
42
43
[13] Oracle Corporation, MySQL 5.7 Reference Manual. [14] M. Cihar, Gammu Manual Release 1.28.96, 2011. [15] A. Murtino, “SMS Alert Dengan Memanfaatkan Remote Logging,” pp. 3-16, 2013. [16] R. S. Pressman, Software Engineering : A Practitioner's Approach, 7th International Edition, New York: The McGraw-Hill Companies, 2010. [17] S. Parker, Shell Scripting : Expert Recipes for Linux, Bash and More, Wrox, 2011.
LAMPIRAN 1.
Script Dynamic DNS #****************************************************************** ****************************** # Script Update Dynamic DNS di MikroTik Untuk Dyndns, No-IP dan ChangeIP # Thanks to : forum.mikrotik.com, threadnya lupa ^_^ # Adam Rachmad / Tested & Work @ ROS v.6.13 18-6-2014 # http://adamonline.web.id #****************************************************************** ****************************** # ganti dengan infomasi account anda, username/password/hostname DDNS Anda #****************************************************************** ****************************** :local username "username" :local password "password" :local hostname "azmi.ns01.info" # 2 pilihan untuk menangkap IP public anda "http" atau "iface" # - http: akan menangkap/mencari IP public yang anda gunakan (skenario jika anda dibelakang NAT modem ADSL) # - iface: akan menggunakan ip public yang di set di interface WAN mikrotik Anda :local discoverBy "http" # nama interface WAN yang akan digunakan menangkap IP public Anda (jika pilihan discoverBy = iface) :local iface "nama_interface_wan_anda" # pilih salah satu layanan Dynamic DNS yang anda gunakan: "dyndns", "noip", and "changeip" :local service "changeip" # Schedule(hari) untuk maksa update jika IP tidak berubah-ubah (agar account DDNS anda tetap aktif) :local forceUpdate 15 #****************************************************************** ****************************** # dibawah ini jangan di ganti2 jika anda tidak tahu apa yang anda lakukan #****************************************************************** ****************************** :local force :global lastUpdate :local currentIP
44
45
:if ($discoverBy="http") do={ /tool fetch mode=http address="checkip.dyndns.org" src-path="/" dst-path="/dyndns.checkip.html" :local result [/file get dyndns.checkip.html contents] :local resultLen [:len $result] :local startLoc [:find $result ": " -1] :set startLoc ($startLoc + 2) :local endLoc [:find $result "