Preview only show first 10 pages with watermark. For full document please download

Realisasi Monitoring Server Menggunakan Nagios Dengan Memanfaatkan Event Handler,email,dan Sms Gateway

server

   EMBED


Share

Transcript

  1   REALISASI MONITORING SERVER   MENGGUNAKAN NAGIOS DENGAN MEMANFAATKAN EVENT HANDLER  , EMAIL  , DAN SMS GATEWAY    Bukhari Abdu Rasyid, Solikin, S.Si.,M.T., Anang Sularsa, S.T. Program Studi Teknik Komputer Politeknik Telkom Bandung 2011 Jl. Telekomunikasi No. 1 Dayeuhkolot Bandung 40257 ABSTRAK  Nagios adalah tool   untuk monitoring sistem dan jaringan komputer dengan lisensi open source  sehingga bebas untuk digunakan serta dikembangkan. Nagios bersifat modular, mudah digunakan, dan memiliki skalabilitas tinggi. Modul atau  plugin  pada Nagios dapat disesuaikan dengan kebutuhan pengguna. Dalam proyek akhir ini dirancang dan direalisasikan monitoring  server menggunakan nagios dengan notifikasi gangguan pada  server melalui email serta SMS  gateway .Sehingga ketika ada gangguan pada  server , Nagios memberikan output   berupa notifikasi status ( up, down ) dan apabila gangguan terjadi pada  service , maka Nagios memberikan output   berupa notifikasi status ( critical, unknown, warning, recovery ). Selain itu juga diterapkan event handler  dari Nagios, sehingga  server mampu merestart  service yang mengalami gangguan agar normal kembali. Sebagai percobaan pengiriman notifikasi dan event handler  , maka dilakukan penonaktifan pada  server dan  service yang dimonitor.Pengiriman email notifikasi dilakukan oleh MTA Postfix sedangkan pengiriman notifikasi berupa SMS dilakukan oleh Gammu. Kata kunci : Nagios, event handler, email , SMS BAB 1 PENDAHULUAN 1.1   Latar belakang masalah Kebutuhan  server   menjadi kebutuhan primer bagi hampir semua perusahaan maupun para pengguna pada umumnya. Akan tetapi  server   yang merupakan sebuah mesin yang terhubung ke jaringan tidaklah selalu berjalan dengan  baik tanpa terjadi gangguan, baik ganguan terhadap hardware maupun software. Dalam sebuah proses bisnis gangguan sekecil apapun terhadap  server   akan mempengaruhi kinerja secara keseluruhan. Untuk mencegah terjadinya gangguan yang terlalu lama biasanya seorang administrator pasti menyiapkan  server backup  dan memonitor kinerja  server  . Khusus dalam hal memonitor  server   tentunya seorang administrator tidak bekerja 24 jam di depan komputernya sehingga selalu mengetahui apabila terjadi gangguan pada  server  . Oleh karena itu diperlukan sebuah fasilitas pendukung yaitu sistem monitoring agar administrator dapat memonitor  server   meskipun tidak  berada di depan komputer. Dengan penggunaan nagios sebagai aplikasi monitoring server   dan gammu sebagai sms  gateway  diharapkan  permasalahan yang sering terjadi pada  server   dapat dimonitor serta diatasi dengan baik tanpa mengganggu kegiatan lain yang dilakukan administrator. Nagios sendiri dapat dikonfigurasi sesuai dengan kebutuhan, seperti pemanfaatan event handler untuk menangani error   serta notifikasi melalui email   dan sms. 1.2   Perumusan masalah Permasalahan yang ditangani dalam pembuatan Proyek Akhir ini: a.   Bagaimana memanfaatkan event handler   untuk menangani error terkait  service (http dan ftp) pada  server ?  b.   Bagaimana mengirimkan notifikasi error kepada administrator melalui email dan SMS ? 1.3   Tujuan Adapun tujuan yang ingin dicapai antara lain sebagai  berikut : a.   Memanfaatkan event handler   untuk menangani error  pada  service (http dan ftp).  b.   Mengimplementasikan notifikasi melalui email dan SMS . 1.4   Batasan Masalah a.    Event handler   menangani error service (http dan ftp).  b.    Event handler hanya diterapkan pada  server nagios. c.    Notifikasi error  berupa status (Up,  Down ) untuk sistem, status( Critical, Recovery, Warning, Unknown ) untuk  service dikirim melalui email dan SMS . d.    Monitoring  dilakukan pada  server dalam jaringan lokal berbasis Linux. e.   Tidak melakukan monitoring   pada perangkat  jaringan lain. f.   Kegagalan pengiriman notifikasi berupa email dan SMS tidak ditangani.   2   1.5   Jadwal Kegiatan 1.1   Tabel 1.1 Jadwal kegiatan penelitian Kegiatan Mei JuniJuliAgustus September 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 Studi literatur Analsis dan Perancanga n Sistem Implement asidan Pengujian Pembuatan laporan BAB II LANDASAN TEORI 2.1   Pengertian Jaringan Komputer Menurut definisi, yang dimaksud dengan  jaringan komputer ( computer networks ) adalah suatu himpunan interkoneksi sejumlah komputer autonomous . Dalam bahasa yang popular dapat dijelaskan bahwa jaringan komputer adalah kumpulan  beberapa komputer dan perangkat lain seperti  printer  , hub  dan sebagainya yang saling terhubung satu sama lain melalui media perantara. Media perantara ini bisa  berupa media kabel maupun media tanpa kabel (nirkabel). Informasi berupa data akan mengalir dari satu komputer ke komputer lainnya atau dari satu komputer ke perangkat lain, sehingga masing-masing komputer yang terhubung tersebut bisa saling bertukar data atau berbagi perangkat keras. 2.2   Pengertian LAN  Local Area Network   (LAN), merupakan sebuah jaringan lokal yang dibuat pada area tertutup. Misalkan dalam satu gedung atau dalam satu ruangan. Kadangkala jaringan lokal disebut juga jaringan  private . LAN biasa digunakan untuk jaringan kecil yang menggunakan resource  bersama-sama, seperti  penggunaan  printer   secara bersama. 2.1   Linux Linux adalah sistem operasi yang dibuat oleh Linus Trovalds dan didesain untuk dapat bekerja secara multitasking   dan multiuser   pada komputer, dalam artian Linux mampu untuk menjalankan  beberapa aplikasi secara bersamaan dan mendukung  penggunaan aplikasi dan komputer untuk melayani  beberapa pengguna sekaligus. Linux dikembangkan menurut standar yang dimiliki UNIX dan kemampuan yang sama dengan UNIX. Artinya Linux memiliki kemampuan cukup baik sebagai  server   maupun workstation  layaknya UNIX. Berikut ini adalah  beberapa kemampuan dan kelebihan yang dimiliki Linux : a.   Mendukung implementasi jaringan dengan  protokol TCP/IP. Protokol ini yang digunakan untuk melakukan komunikasi pada jaringan.  b.    Multitasking   dan multiuser  , yaitu kemampuan untuk menggunakan beberapa aplikasi secara  bersamaan dan dapat melayani beberapa  pengguna sekaligus. c.   Virtual Memory. Memungkinkan penggunaan space harddisk sebagai memory. d.   Shared Library . Memungkinkan penggunaan library  secara bersama sehingga file executable   lebih sedikit menggunakan ruang pada harddisk  . e.    Demand paged Loading  . Hal ini akan memastikan hanya segmen dari program yang benar-benar digunakan yang akan dibaca dari disk ke memori. f.   Implementasi unified memory pool   untuk program dan disk cache , sehingga semua  free-memory akan digunakan untuk mempercepat proses. g.   Menggunakan lisensi  free software sehingga dapat digunakan secara bebas tanpa perlu membayar kepada pihak tertentu. h.   Dukungan komunitas internet yang sangat matang, seperti pada website forum, blog, aggregator, jejaring sosial, dan webzine . i.   Memiliki kestabilan yang sangat tinggi. Banyak konfigurasi linux yang tidak membutuhkan proses restart  , ketika terdapat perubahan konfigurasi. Ubuntu Ubuntu terdiri dari banyak paket perangkat lunak, sebagian besar yang didistribusikan di bawah lisensi perangkat lunak bebas.Satu-satunya  pengecualian adalah beberapa driver proprietary hardware . Lisensi utama yang digunakan adalah GNU General Public License  (GNU GPL) bersama dengan Lisensi GNU  Lesser General Public License  (GNU LGPL), yang secara eksplisit menyatakan bahwa  pengguna bebas untuk menjalankan, menyalin, mendistribusikan, mempelajari, mengubah, mengembangkan dan meningkatkan kinerja perangkat lunak. Di sisi lain, ada perangkat lunak  proprietary tersedia yang dapat berjalan di Ubuntu. Ubuntu berfokus pada kegunaan, keamanan dan stabilitas. Ubiquity installer   mengizinkan Ubuntu untuk diinstal ke hard disk   dari live  CD, tanpa perlu restart   komputer sebelum instalasi. Ubuntu juga menekankan aksesibilitas dan internasionalisasi untuk menjangkau orang sebanyak mungkin. Ubuntu terinstal dengan berbagai perangkat lunak yang mencakup LibreOffice (OpenOffice dalam versi sebelum 11.04), Firefox, Empathy (Pidgin dalam versi sebelum 9.10), Transmisi, GIMP (dalam versi sebelum 10.04), dan beberapa game ringan (seperti Sudoku dan catur). Software  tambahan yang tidak terinstal secara default dapat di down load dan diinstal dengan menggunakan Ubuntu Software  Center atau Synaptic Package Manager. Ubuntu juga dapat menjalankan banyak program yang dirancang untuk Microsoft Windows (seperti seperti Microsoft Office), melalui Wine atau menggunakan Virtual Machine (seperti VMware Workstation atau VirtualBox). Ubuntu memiliki kelebihan-kelebihan sebagai  berikut: 1.   Dukungan komunitas yang luas dan aktif. 2.   Pengembangan yang aktif . 3.   User Friendly.   4.   Stabil dan selalu update. 5.   Kompatibel dengan berbagai perangakat keras komputer lama maupun terbaru. 6.   Repositori tersedia di banyak  server , lokal maupun internasional. 2.2   Nagios  Nagios adalah tool   untuk monitoring sistem dan jaringan komputer dengan lisensi open source     3   sehingga bebas untuk digunakan serta dikembangkan.  Nagios bersifat modular, mudah digunakan, dan memiliki skalabilitas tinggi. Modul atau  plugin  pada  Nagios dapat disesuaikan dengan kebutuhan pengguna.  Nagios awalnya didesain untuk berjalan pada sistem operasi Linux, namun dapat juga berjalan dengan baik hampir di semua sistem operasi Unix. Beberapa fitur yang tersedia pada Nagios diantaranya adalah: a.    Monitoring   servis - servis pada jaringan (SMTP, POP3, HTTP, PING, dan sebagainya).  b.    Monitoring   sistem host   (  Processor load  ,  Disk usage , dan sebagainya). c.   Web-based interface. d.   Desain  plugin  yang sederhana. e.   Jika terjadi masalah, Nagios dapat menghubungi user   lewat email dan sms. Gambar 2. 1 Monitoring nagios pada linux host 2.3   Event Handler Nagios Event handler adalah perintah tambahan untuk system berupa script yang akan dijalankan secara otomatis apabila terjadi error atau perubahan terhadap system, tergantung konfigurasi yang dilakukan oleh administrator. Salah satu kegunaan event handler adalah kemampuan untuk memperbaiki masalah sebelum notifikasi dikirim. Beberapa kegunaan event handler yang lain meliputi : a.    Restart services  yang gagal berfungsi.  b.   Memasukkan trouble ticket   ke helpdesk system   c.   Memasukkan informasi log   ke database.   2.4   Notifikasi Email dan SMS  Notifikasi email dan sms adalah suatu  peringatan yang dibuat dengan suatu software email, sms daemon  dan aplikasi pendukungnya yang digunakan untuk memberikan suatu informasi dari suatu respon yang akan dilakukan. 2.5   SMS Gateway    SMS Gateway  adalah sebuah perangkat lunak yang menggunakan bantuan komputer dan memanfaatkan teknologi  seluler   yang diintegrasikan agar mampu mendistribusikan pesan-pesan yang dihasilkan lewat sistem informasi melalui media SMS yang ditangani oleh jaringan seluler. SMS ditangani oleh jaringan melalui suatu layanan data text atau SMS Center (SMSC) yang  berfungsi menyimpan dan meneruskan pesan dari sisi  pengirim ke sisi penerima. Format SMS yang dipakai oleh produsen MS (  Mobile Station ) adalah  Protocol  Data Unit   (PDU). SMS merupakan sebuah layanan yang  bersifat non real-time  dengan sebuah pesan singkat dapat dikirim ke suatu tujuan, tidak mempedulikan aktif tidaknya nomor tujuan. Bila dideteksi bahwa tujuan tidak aktif, maka sistem akan menunda pengiriman ke tujuan hingga tujuan aktif kembali. Pada dasarnya sistem SMS akan menjamin pengiriman dari suatu pesan hingga sampai ke tujuan. 2.6   Gammu Gammu adalah nama sebuah  project   yang ditujukan untuk membangun aplikasi, script dan drivers   yang dapat digunakan untuk semua fungsi yang memungkinkan pada telepon seluler atau alat sejenisnya. Sekarang Gammu telah menyediakan   codebase  yang stabil dan mapan untuk berbagai macam model telepon yang tersedia di pasaran dibandingkan dengan  project   sejenis. Gammu merupakan  project   yang  berlisensi GNU GPL 2 sehingga menjamin kebebasan menggunakan tool   ini tanpa perlu takut dengan masalah legalitas dan biaya yang mahal yang harus dikeluarkan. Gammu mendukung berbagai macam model telepon seluler dengan berbagai jenis koneksi dan tipe. 2.7   Email     Email   adalah sarana untuk mengirim surat atau  pesan melalui jaringan Intenet. Seperti halnya konsep surat melalui pos, email   memiliki alamat yang bias dituju secara elektronik, contoh alamat email   : [email protected].  Standar protokol pertama yang digunakan email   adalah SMTP ( Simple Message Transfer Protokol  ). Seiring pertumbuhan internet, muncul protokol baru yaitu POP (  Post Office Protocol  ). Dengan penggunaan protokol POP, email   dapat dibaca secara offline . 2.8   Mail Server Sebuah mail server   (juga dikenal sebagai  Mail Transfer Agent   atau MTA, pengirim mail  , router mail   atau mailer Internet  ) adalah sebuah aplikasi yang menerima mail   masuk dari pengguna lokal (orang dalam domain  yang sama) dan meneruskan mail   keluar untuk  pengiriman. Sebuah komputer yang didedikasikan untuk menjalankan aplikasi tersebut juga disebut mail server  .   2.9   Mail Transfer Agent (MTA) MTA merupakan program yang bertanggung  jawab dalam hal pengiriman sebuah email   ke alamat tujuan. Beberapa Jenis MTA antara lain: Sendmail, Qmail, Mercury, Postfix. MTA menggunakan port 25 untuk penghubung antar MTA. 2.10   Postfix Postfix adalah Mail Transfer Agent yang dikembangkan oleh Wietse Venema. Beberapa fitur yang ditawarkan oleh Postfix: a.   Performance. Postfix mampu melayani sejuta e- mail dalam sehari. Hal ini menunjukkan kalau Postfix dapat dikategorikan sebagai mail server  berskala besar.  b.   Kompatibilitas. Postfix sangat kompatibel dengan Sendmail (yang sudah banyak dipergunakan orang sebagai MTA di UNIX). c.   Postfix terdiri beberapa program kecil yang saling tidak percaya. Jika Sendmail hanya mempunyai satu program besar dan satu file konfigurasi besar, Postfix memiliki program-program kecil yang menjalankan tugasnya secara spesifik.   4   d.   Keamanan. Postfix dijalankan dengan proteksi  bertingkat, oleh program-program kecil yang saling tidak percaya. Masing-masing program dijalankan oleh user khusus (bukan setuid). e.   Multiple Transport. Postfix dapat mengirim surat dengan modus SMTP (Simple Mail Transfer Protocol) dan UUCP (Unix to Unix Copy Protocol) sekaligus. f.   Mendukung format Maildir. Maildir adalah format  boks penyimpanan surat dalam bentuk folder daripada berbentuk satu fi le (mbox). g.   Kemudahan konfigurasi. Meskipun Postfix terdiri dari banyak program kecil,namun hanya memiliki satu fi le konfi gurasi yang mudah untuk di-setting, yakni /etc/Postfix/main.cf. Berikut sekilas gambaran bagaimana Postfix  bekerja: a.   Jika ada email lokal, maupun email remote yang mempergunakan SMTP, diletakkan ke dalam direktori /var/mail/Postfix/maildrop. Direktori ini world writable, dan permissionnya selalu dicek oleh pickup daemon setiap kali ada mail masuk.  b.   Di sini akan dicek host, domain,  maupun username   yang dituju. Pengecekan juga termasuk yang didefinisikan di /etc/aliases dan ~/.forward. Jika  bermasalah, mail akan dikembalikan ke pengirim. Biasanya ada satu tembusan ke postmaster. c.   Dari maildrop, mail akan di-clean-up dengan menambahkan header, dan meletakkannya di direktori /var/mail/postfix/incoming. Di sini  program queue manager akan diaktifkan. d.   Queue Manager akan memisahkan email yang ditujukan untuk jaringan local dan mail yang ditujukan untuk host/jaringan remote. Jika ada mail yang macet, Queue Manager akan memilahnya, sehingga tidak mempengaruhi  pengantaran email lainnya. e.   Trivial-rewrite adalah program yang dipanggil oleh Queue Manager untuk resolving   alamat dari tujuan surat. 2.11   Web Server Web server adalah  software yang menjadi tulang belakang dari world wide web (www). Secara umum Web Server yaitu, Suatu  program (dan juga mesin yang menjalankan program) yang mengerti  protokol HTTP dan dapat menanggapi permintaan-  permintaan dari web  browser yang menggunakan  protokol tersebut.  Web server menunggu permintaan dari client yang menggunakan browser seperti  Netscape Navigator, Internet Explorer, Modzilla, dan  program browser lainnya. Jika ada permintaan dari  browser, maka web server akan memproses  permintaan itu kemudian memberikan hasil prosesnya  berupa data yang diinginkan kembali ke browser  . Web server  , untuk berkomunikasi dengan client  -nya ( web browser  ) mempunyai protokol sendiri, yaitu HTTP ( hypertext transfer protocol  ). Dengan  protokol ini, komunikasi antar web server dengan client  -nya dapat saling dimengerti dan lebih mudah. Berikut contoh-contoh web server di antaranya : a.   Apache Web Server - The HTTP Web Server  b.    Nginx c.   Apache Tomcat d.   Microsoft windows Server 2008 Internet Information Services (IIS) e.   Lighttpd Apache Web Server Apache adalah web server yang kompak, modular, mengikuti standar protokol HTTP, dan tentu saja sangat digemari. Kesimpulan ini bisa didapatkan dari jumlah pengguna yang jauh melebihi para pesaingnya. Sesuai hasil survai yang dilakukan oleh Netcraft, bulan Januari 2005 saja jumlahnya tidak kurang dari 68% pangsa web server yang berjalan di Internet. Ini berarti  jika semua web server selain Apache digabung, masih belum bias mengalahkan jumlah Apache. Saat ini ada dua versi Apache yang bisa dipakai untuk server produksi, yaitu versi mayor 2.0 dan versi mayor 1.3., bisa menggunakan salah satu dari keduanya. Tapi sangat dianjurkan memakai versi 2.0. Fitur Apache Berikut adalah fitur-fitur Apache yang sangat  baik untuk sebuah web server : a.   Arsitektur modular.  b.   Mendukung banyak sistem operasi, termasuk di dalamnya adalah Windows  NT/2000/XP dan berbagai varian Unix. c.   Mendukung IP versi 6 (Ipv6). d.   Mendukung CGI (Common Gateway Interface) dan SSI (Server Side Include). e.   Mendukung otentifi kasi dan kontrol akses. f.   Mendukung SSL (Secure Socket Layer) untuk komunikasi terenkripsi. g.   Konfigurasi yang mudah dipahami. h.   Mendukung Virtual Host. i.   Pesan kesalahan multi bahasa dan bias dimodifikasi. BAB III ANALISIS DAN PERANCANGAN Pada bab ini akan dibahas mengenai perancangan sistem monitoring server agar bisa mengirim notifikasi melalui modem dalam bentuk email dan sms, serta dapat melakukan event handler  . Selain itu, alur kerja sistem akan dijelaskan menggunakan  flowchart  . Pembahasan tersebut dibagi menjadi  beberapa subbab, yaitu : 3.1   Pengumpulan Data a.   Pencarian referensi dan sumber-sumber yang  berhubungan dengan Nagios   dan  pengimplementasiannya.  b.   Pencarian referensi dan sumber-sumber yang  berhubungan dengan email     server dan sms  gateway . c.   Mempelajari implementasi dari Postfix dan Gammu untuk digabungkan dengan sistem monitoring   . d.   Mempelajari dan memahami proses event handler     pada Nagios. e.   Pencarian referensi tentang web server   dan  ftp  server  .   5   3.2   Perancangan Sistem  Nagios sebagai monitoring server, Gammu sebagai sms gateway, dan Postfix sebagai email server akan diinstal pada sistem operasi Ubuntu. Agar aplikasi berjalan dengan lancar maka dibutuhkan spesifikasi minimum pada server yaitu dengan  penggunaan  processor   minimum Pentium 4 (atau yang setara) dan RAM tidak kurang dari 512 MB. Kebutuhan perangkat keras dan lunak merupakan salah satu aspek utama yang diperhatikan dalam pembuatan proyek akhir ini. Tidak semua  perangkat keras sesuai dengan kebutuhan perangkat lunak, misal pada modem, modem harus menggunakan spesifikasi yang sudah didukung oleh  perangkat lunak. Oleh karena itu kebutuhan perangkat keras disesuaikan dengan perangkat lunak yang akan digunakan. Sistem monitoring server yang dirancang diharapkan sesuai dengan fungsinya yaitu mampu melakukan event handler   dan mengirimkan notifikasi ke administrator. Sehingga dibuat sebuah diagram alur sebagai pedoman alur kerja sistem yang akan diimplementasikan nanti. Untuk lebih jelasnya dari rancangan proyek ini, dapat dilihat dari gambar-gambar berikut berikut: internet Nagios, Send Mail, Gammu Web Server  TP Server GSM modem switch Check_nrpe Admin phone Mail admin   Gambar 3. 1 Desain sistem MULAI Terjadi Error pada Server  Nagios menggunakan event handler untuk merestart service dan sistem Nagios Mengirim Data SELESAI Sendmail dan Gammu memproses dan mengirim informasi GSM Modem memproses pengiriman Sms dan Email sukses terkirim ? SMS diterima  YA TIDAK   Gambar 3. 2 Diagram alur sistem 3.3 Kebutuhan Sistem Untuk menyelesaikan proyek akhir ini, maka dibutuhkan analisis beberapa perangkat lunak dan  perangkat keras yang akan digunakan untuk dapat memenuhi kebutuhan dan mencapai tujuan yang diinginkan. Analisis yang dilakukan antara lain sebagai berikut: 3.3.1 Spesifikasi perangkat keras dan lunak pada server monitoring  No Perangkat Keras / Lunak Unit Keterangan 1 PC server 1 Processor : AMD Zacate E-350 RAM : DDR3 2 GB HDD : 320 GB 2 Modem 1 Huawei 2 Sistem Operasi 1 Ubuntu 3 Switch 1 TP-Link 5 port 4 Kabel UTP 3 Cat 5 6 Gammu 1 Sebagai sms  gateway  system 7 Nagios   1 Sebagai tools monitoring server    8 Postfix 1 Sebagai mail transfer agent    untuk notifikasi email 9 Apache 1 Sebagai webserver    untuk web interface    Nagios 10 MySQL 1 Sebagai database  server    Tabel 3. 1 Spesifikasi server monitoring 3.3.2 Spesifikasi perangkat keras dan lunak pada host server  No Perangkat Keras / Lunak Unit Keterangan 1 PC host  server    2 Intel Dual Core, Harrdisk, RAM. 2 Sistem Operasi 1 Ubuntu 7 vsftpd 1 Sebagai FTP  server    8 Apache 1 Sebagai webserver    9 MySQL 1 Sebagai database  server    Tabel 3. 2 Spesifikasi host server yang dimonitor 3.4   Penulisan Laporan Pembuatan laporan dilakukan dengan mengikuti syarat-syarat yang sudah ditentukan dan dilaksanakan bersamaan dengan tahap pengujian. Hal ini dimaksudkan agar hasil pengujian langsung dapat dibuatkan laporan dengan dokumentasinya.   6   BAB IV IMPLEMENTASI DAN PENGUJIAN 4.1 Implementasi Dalam pengimplementasian proyek akhir ini ada beberapa langkah yang harus dilakukan, diantaranya : 4.1.1 Hal-hal yang harus dipersiapkan Sebelum memulai pengimplementasian dalam proyek akhir ini ada beberapa hal yang harus dipersiapkan, diantaranya adalah : a.   PC / Laptop PC / Laptop digunakan untuk tempat  penginstallan dan konfigurasi perangkat lunak yang akan dibentuk menjadi sebuah sistem monitoring server. PC / laptop nanti juga berfungsi sebagai host server.  b.   Modem Huawei GSM/CDMA Modem Huawei support dengan software sms gateway Gammu yang akan digunakan dalam  proyek akhir ini. Modem digunakan untuk sms gateway dan koneksi internet sehingga server bisa mengirim email dengan MTA. c.   Simcard GSM/CDMA Simcard dibutuhkan untuk pengiriman sms oleh sms gateway dan untuk koneksi internet sebagai  jalan pengiriman email melalui SMTP. d.   Switch dan Kabel UTP Switch dan kabel UTP digunakan untuk menghubungkan antara server monitoring dan server yang dimonitor (host server). e.   CD atau Flashdisk installer Ubuntu Dalam proyek akhir ini sistem monitoring server dan host server berjalan di system operasi Ubuntu. f.    Nagios-3.2.3.tar.gz Merupakan package software monitoring server yang diperlukan saat penginstallan Nagios. g.   Koneksi Internet Merupakan hal penting dalam proyek akhir ini karena dibutuhkan dalam setiap installasi software yang akan digunakan. Gammu dan Apache2 misalnya, langsung diinstall melalui CLI Ubuntu dengan catatan server terkoneksi ke internet dan repositori ubuntu. Dan masih banyak software lain pendukung sistem monitoring yang diinstall langsung melalui CLI. 4.1.2 Instalasi dan Konfigurasi Pada tahap ini dilakukan instalasi software yang berkaitan atau diperlukan dalam sistem monitoring. 4.1.2.1 Instalasi dan Konfigurasi Modem Instalasi modem dilakukan apabila driver modem belum terdeteksi otomatis oleh Ubuntu. Karena disini menggunakan modem yang sudah secara otomatis terdeteksi oleh Ubuntu, maka tinggal dilakukan konfigurasi. Berikut konfigurasinya : a.   Masuk ke network connections dengan langkah : system -> preferences -> network connections. Kemudian akan muncul tampilan seperti dibawah ini. Pilih menu tab “ mobile broadband” dan kemudian pilih menu add untuk memulai konfigurasi selanjutnya.  b.   Pada bagian ini Ubuntu membaca device modem yang kita gunakan, apabila device telah muncul kita tinggal melanjutkan ke konfigurasi selanjutnya dengan meng- klik „forward‟.   c.   Memilih provider dari simcard untuk koneksi internet yang digunakan, di proyek akhir ini menggunakan smartfren maka ditulis “smart”  pada kolom provider, hal itu dilakukan karena tidak terdapat dalam list. Selanjutnya memilih negara tempat provider dan terakhir apply. Gambar 4. 1 Network Connections Gambar 4. 2 Deteksi Modem   Gambar 4. 3 Memilih provider Gambar 4. 4 Memilih negara provider   7   d.   Pada bagian ini adalah konfigurasi nomor dial, username , dan  password   yang digunakan untuk melakukan koneksi. Setelah konfigurasi selesai maka koneksi internet siap digunakan. 4.1.2.2 Konfigurasi Repositori Ubuntu Konfigurasi repositori dimaksudkan agar server terkoneksi ke repositori lokal sehingga bisa melakukan instalasi software-software yang diperlukan dalam pembuatan server monitoring dan lebih besar kecepatan download paket-paketnya daripada mendownload paket-paket dari repositori luar negeri. Berikut tahapan konfigurasinya : a.   Masuk Synaptic Package Manager, pilih Settings -> Repositories, Selanjutnya akan muncul Software Source, dibagian „Ubuntu Software ‟ pada menu „Download from‟ dipilih „other‟ untuk memilih server lokal. Pada proyek akhir ini menggunakan server lokal dengan alamat kambing.ui.ac.id (server Indonesia). Untuk lebih jelasnya dapat dilihat pada gambar  berikut :  b.   Setelah memilih server, selanjutnya adalah mereload repository agar daftar repository yang ada diperbarui dengan repository dari kambing.ui.ac.id. Setelah proses download daftar repository selesai, maka repository siap digunakan untuk instalasi. Dibawah ini gambar menunjukkan tombol reload dan proses reload repository. 4.1.2.3 Instalasi dan Konfigurasi Nagios Instalasi Nagios bisa dilakukan setelah sebelumnya paket yang diperlukan sudah didownload,  paket tersebut berupa software nagios 3.2.3 dan pluginnya. Pada tahapan instalasi nagios diperlukan paket-paket software  pendukung yang harus diinstal terlebih dahulu. Berikut tahapan instalasi dan konfigurasinya : a.   Instalasi compiler Ubuntu root@rascool:~# apt-get install build-essential  b.   Instalasi GD Libraries root@rascool:~# apt-get install libgd2-xpm-dev c.   Instalasi Apache2 root@rascool:~# apt-get install apache2   Gambar 4. 5 Konfigurasi dial koneksi Gambar 4. 6 Memilih other pada software source Gambar 4. 7 Memilih server Indonesia ' kambing.ui.ac.id' Gambar 4. 8 Klik reload pada menu synaptic package manager Gambar 4. 9 Proses download daftar repositori   8   d.   Instalasi PHP untuk Apache2 : root@rascool:~# apt-get install php5-common php5 libapache2-mod-php5   e.   Konfigurasi Apache2 agar menggunakan PHP : root@rascool:~# /etc/apache2/apache2.conf f.   Restart Apache2 : root@rascool:~# /etc/init.d/apache2 restart g.   Penambahan user untuk nagios : root@rascool:~# useradd -m nagios   root@rascool:~# passwd nagios root@rascool:~# groupadd nagcmd   root@rascool:~# usermod -a -G nagcmd nagios   root@rascool:~# usermod -a -G nagcmd www- data h.   Instalasi nagios dari  package  tar.gz : root@rascool: /home/rasyid/# tar -zxvf nagios- 3.2.3.tar.gz root@rascool: /home/rasyid/# cd nagios-3.2.3   root@rascool: /home/rasyid/nagios-3.2.3# ./configure --with-command-group=nagcmd   root@rascool: /home/rasyid/nagios-3.2.3# make all   root@rascool: /home/rasyid/nagios-3.2.3# make install   root@rascool: /home/rasyid/nagios-3.2.3# make install-init   root@rascool: /home/rasyid/nagios-3.2.3# make install-config   root@rascool: /home/rasyid/nagios-3.2.3# make install-commandmode   root@rascool: /home/rasyid/nagios-3.2.3# make install-webconf    i.   Menambahkan user untuk interface nagios : root@rascool:~# mkdir /usr/local/nagios/etc   root@rascool:~# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin   Output  New password: Re-type new password:  j.   Menambahkan direktori nagios ke apache2 dengan konfigurasi pada apache.conf : root@rascool:~# nano /etc/apache2/apache.conf    root@rascool:~# /etc/init.d/apache2 restart    k.   Instalasi Nagios Plugins dari package tar.gz yang telah diunduh sebelumnya : root@rascool:~# cd /home/rasyid/ root@rascool: /home/rasyid/ # nagios-plugins- 1.4.15.tar root@rascool: /home/rasyid/ # nagios-plugins- 1.4.15   root@rascool: /home/rasyid/ # ./configure -- with-nagios-user=nagios --with-nagios- group=nagios   root@rascool: /home/rasyid/ # make root@rascool: /home/rasyid/ # make install   root@rascool: ~# ln -s /etc/init.d/nagios /etc/rcS.d/S99nagios   Konfigurasi lanjutan untuk nagios berupa  pembuatan file monitor.cfg untuk menyatukan  beberapa file konfigurasi menjadi satu kesatuan, ditulis pada lampiran.   9   l.   Mengaktifkan Nagios: sudo /etc/init.d/nagios start 4.1.2.4 Tahap instalasi dan konfigurasi Gammu Pada tahap ini dilakukan instalasi Gammu dan software yang diperlukan dalam instalasi Gammu beserta konfigurasinya. a.   Instalasi Gammu : root@rascool:~# apt-get install gammu gsm-utils  b.   Melakukan check pada port modem : Dilakukan untuk mengetahui pada port mana usb modem terkoneksi, sehingga bias dilakukan konfigurasi selanjutnya. root@rascool:~# dmesg | tail root@rascool:~# gsmctl -d /dev/ttyUSB0 c.   Konfigurasi gammurc : root@rascool:~# nano /etc/gammurc [gammu]  port= /dev/ttyUSB0 connection = at115200 d.   Menambahkan user nagios ke usergroup dialout : root@rascool:~# usermod -G dialout nagios root@rascool:~# usermod -G dialout www-data e.   Melakukan tes kirim sms dengan user nagios : root@rascool:~# su nagios $ echo "sms test" | /usr/bin/gammu --sendsms TEXT 085645809541 4.1.2.4   Tahap instalasi dan konfigurasi Postfix a.   Instalasi Postfix root@rascool:~# apt-get install postfix Selanjutnya akan dihadapkan pada konfigurasi seperti pada gambar, pilih Internet Site dan mengisikan mail name. Gambar 4. 10 Konfigurasi awal Postfix Gambar 4. 11 Konfigurasi mail pada Postfix  b.   Konfigurasi postfix manual, dilakukan untuk mengkonfigurasi SMTP dan IP yang terhubung ke internet. root@rascool:~# cp /etc/postfix/main.cf /etc/postfix/mainbackup.cf root@rascool:~# nano /etc/postfix/main.cf Gambar 4. 12 Konfigurasi utama pada Postfix c.   Melakukan restrart postfix dan tes : root@rascool:~# /etc/init.d/postfix restart root@rascool:~# echo cuma tes saja |mail - s “tes” [email protected] 4.1. Pengujian Pada tahan ini dilakukan beberapa pengujian untuk memastikan fungsionalitas sistem berjalan dengan semestinya. 4.2.1 Pengujian terhadap fungsionalitas interface server nagios Pengujian dilakukan dengan cara melakukan akses ke web interface server   nagios http://rasyid.net/nagios.  Di bawah ini adalah gambar web interface dari nagios, web ini diakses menggunakan alamat localhost, yaitu dengan mengetikkan   10   alamat rasyid.net/nagios pada web browser. Alamat rasyid.net sebelumnya telah didefinisikan pada konfigurasi hosts. Gambar 4. 13 Halaman depan nagios Keterangan Gambar : a.   Hosts : menunjukkan jumlah server yang dimonitoring  beserta status servernya dalam keadaan Up atau Down. Status Up bila server hidup dan terkoneksi ke  jaringan, status Down bila server mati atau tidak terkoneksi ke jaringan.  b.   Services : menunjukkan status dari service yang di monitoring. Terdapat beberapa status yaitu Critical, Warning, Unknown, Ok, dan Pending. c.   Monitoring Features : memperlihatkan fitr-fitur pada  Nagios yang diaktifkan. Fitur tersebut diantarnya adalah Flap Detection, Noification, Event Handler, Active Checks, Passive Checks. Fitur yang berstatus enable berarti sedang aktif, apabila disable berarti tidak aktif. Di bawah ini adalah gambar interface yang menunjukkan status service dari host server yang dimonitoring maupun pada localhost, sesuai pada konfigurasi yang dilakukan. Service yang tampil pada kolom service juga merupakan hasil dari konfigurasi. Gambar 4. 14 Status server pada nagios Keterangan : Pada gambar terdapat bagian„service status details for all host s‟ yang terdiri dari 7 kolom yang mempunyai fungsi  berbeda-beda : 1. Host : menunjukkan nama host. 2. Service : menunjukkan service dari masing-masing host. 3. Status : menunjukkan status dari service . 4. Last Check : menunjukkan waktu terakhir service dicek. 5. Duration : lama service dicek. 6. Attempt : percobaan cek yang dilakukan nagios pada service 7. Status Information : memberikan informasi detail gangguan yang terjadi pada service . Catatan : Dari hasil penelitian ketika terjadi error terdapat delay pada  perubahan statusservice dari ”OK” ke ”CRITICAL” maupun ke status lainnya dan juga sebaliknya. Delay terjadi selama 2-4 menit. Lamanya delay terjadi tergantung pada pendefinisian  pada konfigurasi ” normal_check_interval” pada nagios dan  pada auto refreshwebbrowser. Sama halnya yang terjadi pada  perubahan status host dari ”UP” ke ”DOWN” maupun sebaliknya. 4.2.2 Pengujian terhadap fungsionalitas Event Handler Pengujian dilakukan dengan  penonaktifan  service http pada localhost, sehingga dapat dilihat status http pada localhost menjadi critical  . Ketika status http terdeteksi critical   maka event handler   akan segera menangani masalah tersebut. Dapat dilihat pada gambar status awal http ” CRITICAL ” , setelah beberapa saat kemudian status menjadi ” OK  ” . Gambar 4.15  Event Handler    Catatan :  Event handler  berfungsi atau berjalan secara otomatis ketika : 1.   Service yang dimonitor tidak berfungsi normal. Contohnya : ketika  service http dalam keadaan critical  .   2.   Service dinonaktifkan. Penonaktifan  service hanya  bisa dilakukan oleh user    „root‟ pada setiap  server yang dimonitor.     11   4.2.3 Pengujian terhadap fungsionalitas notifikasi email Pengujian dilakukan dengan menonaktifkan 2 host server yang di monitoring, penonaktifan bias dilakukan dengan mematikan server yang dimonitoring atau dengan memutus koneksi ke server tersebut. Sehingga secara otomatis notifikasi email  bahwa server1 dan server2 down akan dikirim ke alamat email yang sudah didefinisikan pada saat konfigurasi. Dibawah ini adalah gambar notifikasi email yang menyatakan  bahwa server down yang dikirim setiap 2 jam : Gambar 4. 16 Notifikasi email Keterangan : Waktu dan tanggal pada email menunjukkan waktu dan tanggal saat nagios mengirim notifikasi, yaitu saat terjadi error  pada  server . Apabila terjadi delay    pengiriman akibat gangguan pada SMTP dari ISP, tidak  berpengaruh terhadap waktu dan tanggal pengiriman notifikasi oleh Nagios . Waktu dan tanggal sesuai dengan saat pengiriman meskipun diterima pada waktu yang berbeda. 4.2.4 Pengujian terhadap fungsionalitas notifikasi melalui SMS Pengujian dilakukan dengan menonaktifkan host   dan menonaktifkan beberapa  service , sehingga notifikasi SMS akan dikirim. Notifikasi dikirim dalam rentang waktu sesuai dengan pendefinisian dalam konfigurasi. Setiap host maupun  service  bisa memiliki rentang waktu yang berbeda-beda. Gambar 4.17 Notifikasi SMS Keterangan : Waktu dan tanggal pada SMS menunjukkan waktu dan tanggal saat nagios mengirim notifikasi, yaitu saat terjadi error  pada  server .Apabila terjadi  pending  pengiriman akibat gangguan pada operator GSM, tidak  berpengaruh terhadap waktu dan tanggal pengiriman notifikasi oleh Nagios . Waktu dan tanggal sesuai dengan saat pengiriman meskipun diterima pada waktu yang  berbeda. BAB V PENUTUP 1.1   Kesimpulan Kesimpulan dari pengujian pada proyek akhir adalah : a.    Nagios memudahkan seorang administrator untuk menkonfigurasi sesuai kebutuhan, hal tersebut terdapat pada cara pemecahan dan penggabungan file konfigurasi yang sangat mudah.  b.   Jumlah pengiriman notifikasi dilakukan sesuai dengan  pendefinisian interval pada file konfigurasi. c.   Untuk melakukan pengiriman email dari MTA (Postfix) dapat menggunakan SMTP dari ISP atau dengan menggunakan SMTP dari Google dan Yahoo. 1.2   Saran Untuk pengembangan lebih lanjut, penulis menyarankan seperti berikut : 1.   Dapat dikembangkan lagi monitoring pada  perangkat jaringan seperti router, switch, dan modem. 2.   Dapat ditambahkanjenis sistem operasi  server yang dimonitor. 3.   Dapat dikembangkan event handler  pada  remote  server , tidak hanya pada  server nagios. a.   . DAFTAR PUSTAKA [1] Erislan. 2006.  Notifikasi e-Mail Melalui SMS  . Yogyakarta : Penerbit Andi. [2] Josephshen, David. 2007.  Building A Monitoring  Infrastructure With Nagios. Boston : Prentice Hall. [3] M. Doss, George. 2000. Tip Server   Red Hat Linux. Jakarta : Elex Media Komputindo. [4] Purbo, Onno W. 2008. Workshop Onno : Panduan  Mudah Merakit dan Menginstal Server Linux . Yogyakarta : Penerbit Andi.   [5] Rafiudin, Rahmat. 2006.  Membangun Server E-Mail  Berbasis Freebsd/Linux . Yogyakarta : Penerbit Andi.   12   [6] Sofana, Iwan. 2008.  Mudah membangun server dengan fedora . Bandung : Informatika. [7] Cihar, Michal. 2011. Gammu Manual. http://wammu.eu/docs/pdf/gammu.pdf (diakses tanggal 27 Mei 2011) [8] ___________. Ubuntu Server Guide . https://help.ubuntu.com/11.04/serverguide/C/serverguide.pdf (diakses tanggal 20 Mei 2011) [9]  ___________.“  Nagios Core Version 3.x  Documentation .” http://nagios.sourceforge.net/docs/nagioscore-3-en.pdf (diakses tanggal 7 Mei 2011) LAMPIRAN Konfigurasi lanjutan untuk nagios berupa pembuatan file monitor.cfg untuk menyatukan beberapa file konfigurasi menjadi satu kesatuan. root@rascool:~# touch /usr/local/nagios/etc/objects/monitor.cfg root@rascool:~#  gedit /usr/local/nagios/etc/objects/monitor.cfg ############################################ # TIMEPERIOD DEFINITIONS ############################################ # ‟24×7′ timeperiod definition   define timeperiod{ timeperiod_name non-stop alias 24 Hours A Day, 7 Days A Week sunday 00:00-24:00 monday 00:00-24:00 tuesday 00:00-24:00 wednesday 00:00-24:00 thursday 00:00-24:00 friday 00:00-24:00 saturday 00:00-24:00 } # „workhours‟ timeperiod definition   define timeperiod{ timeperiod_name working alias “Normal” Working Hours   monday 09:00-16:00 tuesday 09:00-16:00 wednesday 09:00-16:00 thursday 09:00-16:00 friday 09:00-16:00 } # „nonworkhours‟ timeperiod definition   define timeperiod{ timeperiod_name freetime alias Non-Work Hours sunday 00:00-24:00 monday 00:00-09:00,17:00-24:00 tuesday 00:00-09:00,17:00-24:00 wednesday 00:00-09:00,17:00-24:00 thursday 00:00-09:00,17:00-24:00 friday 00:00-09:00,17:00-24:00 saturday 00:00-24:00 } # „none‟ timeperiod definition   define timeperiod{ timeperiod_name none alias No Time Is A Good Time } # CONTACT DEFINITIONS # 'nagios' contact definition define contact{ contact_name nagios alias Nagios Admin service_notification_period non-stop   13   host_notification_period non-stop service_notification_options w,u,c,r host_notification_options d,u,r service_notification_commands notify-service-by- email host_notification_commands notify-host-by-email email [email protected] } # 'rasyid' contact definition define contact{ contact_name rasyid alias Bukhari Abdu Rasyid service_notification_period working host_notification_period working service_notification_options c,r host_notification_options d,u,r service_notification_commands notify-service-by- email host_notification_commands notify-host-by-email email [email protected] } # 'SMS' contact definition define contact{ contact_name sms alias sms Bukhari Abdu Rasyid service_notification_period non-stop host_notification_period non-stop service_notification_options c,r host_notification_options d,u,r service_notification_commands notify-by-sms host_notification_commands host-notify-by-sms  pager 085645809541 } # 'linux-admins' contact group definition define contactgroup{ contactgroup_name linux-admins alias Linux Administrators members rasyid, sms, nagios } # 'Server' host definition define host{ use linux-server ; Name of host template to use host_name localhost alias Server PC Nagios address 127.0.0.1 check_command check-host-alive max_check_attempts 20 check_period non-stop notification_interval 120 notification_period non-stop notification_options d,u,r stalking_options o,d,u contact_groups linux-admins } define host{ use linux-server ; Name of host template to use host_name Server1 alias Server PC Webserver address 192.168.1.x check_command check-host-alive max_check_attempts 20 check_period non-stop notification_interval 120 notification_period non-stop notification_options d,u,r stalking_options o,d,u contact_groups linux-admins   14   } define host{ use linux-server ; Name of host template to use host_name Server2 alias Server PC FTP address 192.168.1.x check_command check-host-alive max_check_attempts 20 check_period non-stop notification_interval 120 notification_period non-stop notification_options d,u,r stalking_options o,d,u contact_groups linux-admins } # 'Server' host group definition define hostgroup{ hostgroup_name Server alias Server Monitor members Server1, Server2 } # Service definition define service{ use local-service ; Name of service template to use host_name Server1, Server2, localhost service_description check_ping is_volatile 0 check_period non-stop max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups linux-admins notification_interval 120 notification_period non-stop notification_options c,r check_command check_ping!100.0,20%!500.0,60% stalking_options o,w,u,c } define service{ use local-service ; Name of service template to use host_name Server1, Server2, localhost service_description check_http is_volatile 0 check_period non-stop max_check_attempts 3 normal_check_interval 5 retry_check_interval 1 contact_groups linux-admins notification_interval 120 notification_period non-stop notification_options w,u,c,r check_command check_http } Menonaktifkan file konfigurasi yang tidak digunakan pada nagios.cfg : root@rascool:~#  gedit /usr/local/nagios/etc/nagios.cfg ..................................................................... # OBJECT CONFIGURATION FILE(S) # These are the object configuration files in which you define hosts, # host groups, contacts, contact groups, services, etc. # You can split your object definitions across several   15   config files # if you wish (as shown below), or keep them all in a single config file. # You can specify individual object config files as shown below: cfg_file=/usr/local/nagios/etc/objects/commands.cfg #cfg_file=/usr/local/nagios/etc/objects/contacts.cfg #cfg_file=/usr/local/nagios/etc/objects/timeperiods.cfg #cfg_file=/usr/local/nagios/etc/objects/templates.cfg # Definitions for monitoring the local (Linux) host #cfg_file=/usr/local/nagios/etc/objects/localhost.cfg #cfg_file=/usr/local/nagios/etc/objects/serverAndi.cfg #cfg_file=/usr/local/nagios/etc/objects/commands.cfg cfg_file=/usr/local/nagios/etc/objects/monitor.cfg # Definitions for monitoring a Windows machine #cfg_file=/usr/local/nagios/etc/objects/windows.cfg # Definitions for monitoring a router/switch #cfg_file=/usr/local/nagios/etc/objects/switch.cfg # Definitions for monitoring a network printer #cfg_file=/usr/local/nagios/etc/objects/printer.cfg .............................................................................. Mengkonfigurasi ulang perintah untuk notifikasi melalui email dan sms pada file commands.cfg : root@rascool:~# gedit /usr/local/nagios/etc/objects/commands.cfg ......................................................................... # SAMPLE NOTIFICATION COMMANDS # These are some example notification commands. They may or may not work on # your system without modification. As an example, some systems will require # you to use "/usr/bin/mailx" instead of "/usr/bin/mail" in the commands below. #'notify-host-by-email' command definition define command{ command_name notify-host-by-email command_line /usr/bin/printf "%b" "*****  Nagios *****Notification Type: $NOTIFICATIONTYPE$Host: $HOSTNAME$State: $HOSTSTATE$Address: $HOSTADDRESS$Info: $HOSTOUTPUT$Date/Time: $LONGDATETIME$" | /usr/bin/mailx -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$ } # 'notify-service-by-email' command definition define command{ command_name notify-service-by-email command_line /usr/bin/printf "%b" "*****  Nagios *****Notification Type: $NOTIFICATIONTYPE$Service: $SERVICEDESC$Host: $HOSTALIAS$Address: $HOSTADDRESS$State: $SERVICESTATE$Date/Time: $LONGDATETIME$Additional Info:$SERVICEOUTPUT$" |mailx -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$ } # CHECK BY SMS : rasyid define command { command_name host-notify-by-sms command_line /usr/bin/printf "%b" "Alert $HOSTNAME$ is $HOSTSTATE$" | /usr/bin/gammu --sendsms TEXT $CONTACTPAGER$ } define command { command_name notify-by-sms command_line /usr/bin/printf "%b" "Alert service $SERVICEDESC$ on $HOSTNAME$" is $SERVICESTATE$ | /usr/bin/gammu --sendsms TEXT $CONTACTPAGER$   16   } # Event Handler Restart define command{ command_name restart-httpd command_line /usr/local/nagios/libexec/eventhandler/restart-http $SERVICESTATE$ $SERVICESTATETYPE$ $SERVICEATTEMPT$ } define command{ command_name restart-ftp command_line /usr/local/nagios/libexec/eventhandler/restart-ftp $SERVICESTATE$ $SERVICESTATETYPE$ $SERVICEATTEMPT$ } ......................................................................................... .........  Event Handler script  untuk   restart http : root@rascool: ~# nano /usr/local/nagios/libexec/eventhandler/restart-http #!/bin/sh # use variables for arguments SERVICESTATE=$1 SERVICESTATETYPE=$2 SERVICEATTEMPT=$3 # we don't want to restart if current status is OK if [ "$SERVICESTATE" != "OK" ] ; then # proceed only if we're in soft transition state if [ "$SERVICESTATETYPE" == "SOFT" ] ; then # proceed only if this is 3rd attempt, restart if [ "$SERVICESTATEATTEMPT" == "3" ] ; then # restarts Apache as system administrator sudo /etc/init.d/apache2 restart fi fi fi exit 0  Event Handler script  untuk   restart- ftp : root@rascool: ~# nano /usr/local/nagios/libexec/eventhandler/restart-ftp #!/bin/sh # use variables for arguments SERVICESTATE=$1 SERVICESTATETYPE=$2 SERVICEATTEMPT=$3 # we don't want to restart if current status is OK if [ "$SERVICESTATE" != "OK" ] ; then # proceed only if we're in soft transition state if [ "$SERVICESTATETYPE" == "SOFT" ] ; then # proceed only if this is 3rd attempt, restart if [ "$SERVICESTATEATTEMPT" == "3" ] ; then # restarts Apache as system administrator sudo service vsftpd restart fi fi fi exit 0 Mengecek Konfigurasi : root@rascool: ~# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg Output :    Nagios Core 3.2.3 Copyright (c) 2009-2010 Nagios Core Development Team and Community Contributors Copyright (c) 1999-2009 Ethan Galstad Last Modified: 03-09-2010 License: GPL Website: http://www.nagios.org Reading configuration data... Read main config file okay... Processing object config file '/usr/local/nagios/etc/objects/commands.cfg'... Processing object config file '/usr/local/nagios/etc/objects/contacts.cfg'... Processing object config file '/usr/local/nagios/etc/objects/timeperiods.cfg'... Processing object config file '/usr/local/nagios/etc/objects/templates.cfg'... Processing object config file '/usr/local/nagios/etc/objects/localhost.cfg'... Read object config files okay... Running pre-flight check on configuration data... Checking services... Checked 8 services. Checking hosts... Checked 1 hosts. Checking host groups... Checked 1 host groups. Checking service groups... Checked 0 service groups. Checking contacts... Checked 1 contacts.   17   Checking contact groups... Checked 1 contact groups. Checking service escalations... Checked 0 service escalations. Checking service dependencies... Checked 0 service dependencies. Checking host escalations... Checked 0 host escalations. Checking host dependencies... Checked 0 host dependencies. Checking commands... Checked 24 commands. Checking time periods... Checked 5 time periods. Checking for circular paths between hosts... Checking for circular host and service dependencies... Checking global event handlers... Checking obsessive compulsive processor commands... Checking misc settings... Total Warnings: 0 Total Errors: 0 Things look okay - No serious problems were detected during the pre-flight check