Você está na página 1de 17

dd.:My Black Corner:.

Thursday, August 30, 2007

Mencegah syn flood attack dengan iptables


SYN flooding attack adalah istilah teknologi informasi dalam bahasa Inggris yang mengacu kepada salah satu jenis serangan Denial-of-service yang menggunakan paket-paket SYN. (sumber: wikipedia Indonesia). Disini saya menerapkan limit pada paket-paket SYN yang masuk, dengan iptables. "-limit" dalam script ini terbagi menjadi dua penjelasan: --limit [params]: Adalah jumlah maksimal dalam satuan [params]. Dimana [params] disini adalah /s (second), /m (minute), /h (hour), /d (day). Default adalah 3/hour. --limit-burst [number]: Adalah inisialisasi jumlah paket SYN yang tertangkap. Default adalah 5. Pada script iptables ini saya juga menerapkan pengamanan terhadap service SSH (port 22). Dimana saya melakukan pembatasan koneksi. Saya ambil cuplikan salah satu script. iptables -l INPUT -p tcp --dport 22 -m state --state NEW -m recent --update -seconds 600 --hitcount 11 -j DROP Default port SSH adalah 22. "--seconds 600" adalah waktu untuk 10 menit koneksi, dimana 600 detik=10 menit (1 menit=60 detik; 10 menit=600 detik). "--hitcount 11" adalah jumlah connection limit untuk tidak melampaui 10, andaikata lebih dari 10 maka berlaku "-j DROP". KESIMPULAN script diatas adalah: iptables akan membatasi port 22 (SSH) untuk tidak melayani permintaan koneksi lebih dari 10 koneksi dalam rentang waktu 10 menit. Penjelasan selebihnya bisa didapatkan pada man iptables atau pada dokumentasi netfilter/iptables. Berikut cara penggunaan script untuk mem-blok syn flood. Buatlah file dengan nama "terserah.sh" lalu masukan script iptables pada akhir artikel ini. Jangan lupa untuk memberikan hak akses untuk dapat di eksekusi (chmod 700).

#SCRIPT BLOK SYN FLOOD IPTABLES


clear printf "Copyright by cybercolombuzz\n"

printf "\n\n" printf "Masukan ip address server:" read SERVER_IP iptables -A INPUT -p tcp --syn -m limit --limit 1/s --limit-burst 3 -j RETURN iptables -N syn_flood iptables -A INPUT -p tcp --syn -j syn_flood iptables -A syn_flood -m limit --limit 1/s --limit-burst 3 -j RETURN iptables -A syn_flood -j DROP iptables -A INPUT -p icmp -m limit --limit 1/s --limit-burst 1 -j ACCEPT iptables -A INPUT -p icmp -m limit --limit 1/s --limit-burst 1 -j LOG --log-prefix PING-DROP: iptables -A INPUT -p icmp -j DROP iptables -A OUTPUT -p icmp -j ACCEPT iptables -I INPUT -p tcp -s 0/0 -d $SERVER_IP --sport 513:65535 --dport 22 -m state --state NEW,ESTABLISHED -m recent --set -j ACCEPT iptables -I INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 600 --hitcount 11 -j DROP iptables -A OUTPUT -p tcp -s $SERVER_IP -d 0/0 --sport 22 --dport 513:65535 -m state --state ESTABLISHED -j ACCEPT

posted by .:CyberColombuzz:. at 4:56 PM 0 comments links to this post

Wednesday, August 29, 2007

Upgrade Kernel Ubuntu Feisty Fawn

Secara default kernel milik ubuntu 7.04 adalah kernel-2.6.20.15-generic. Pada artikel kali ini saya publish bagaimana upgrade kernel default feisty fawn ke kernel2.6.22-9-generic. Untuk mengetahui fitur kernel 2.6.22-9-generic ini bisa dilihat disini. Ada langkah penting yang harus kita lakukan sebelum meng-upgrade kernel ini pada feisty fawn. Pertama kita harus menambahkan repository milik gusty gibbon (ubuntu 7.10), hal ini dilakukan sementara untuk menerapkan versi kernel baru pada feisty.
root# echo deb http://archive.ubuntu.com/ubuntu/ gutsy main restricted | sudo tee -a /etc/apt/sources.list

Lalu
root#

jangan

lupa

untuk

meng-update
apt-get

source

list

apt.
update

Berikutnya kita install kernel beserta modul bawaannya.


root# apt-get install linux-backports-modules-2.6.22-9-generic linux-headers-2.6.22-9 linuxheaders-2.6.22-9-generic linux-image-2.6.22-9-generic linux-restricted-modules-2.6.22-9-generic linux-ubuntu-modules-2.6.22-9-generic

Setelah system selesai meng-install jangan lupa untuk menghapus kembali source.list gusty gibbon yang tadi dibuat. Caranya edit file /etc/apt/sources.list , dan berikan tanda comment ("#") pada baris: deb http://archive.ubuntu.com/ubuntu/ gutsy main restricted Setelah selesai langkah berikutnya adalah meng-update kembali source list dengan perintah:
root# apt-get update

Apabila sampai sini tidak ada masalah. Untuk menerapkan versi kernel yang baru pada sistem feisty kita, yang harus kita lakukan adalah me-reboot kompi.

TROUBLESHOOTING Apabila setelah reboot, kompi kita bermasalah, maka ikuti langkah berikut untuk mengembalikan kernel ke versi sebelumnya. Uninstall kernel versi baru, perintahnya:
root# apt-get remove linux-backports-modules-2.6.22-9-generic linux-headers-2.6.22-9 linuxheaders-2.6.22-9-generic linux-image-2.6.22-9-generic linux-restricted-modules-2.6.22-9-generic linux-ubuntu-modules-2.6.22-9-generic

Hal ini akan menghapus list kernel pada menu Grub, tapi untuk beberapa kasus kita harus menghilangkannya secara manual. Edit file /boot/grub/menu.lst.
root# vi /boot/grub/menu.lst

Hapus baris-baris seperti dibawah ini: title Ubuntu, kernel 2.6.22-9-generic root (hd0,0) kernel /boot/vmlinuz-2.6.22-9-generic root=UUID=34f3806f-36b8-494d-be1778325684a0a5 ro quiet splash initrd /boot/initrd.img-2.6.22-9-generic quiet savedefault title Ubuntu, kernel 2.6.22-9-generic (recovery mode) root (hd0,0) kernel /boot/vmlinuz-2.6.22-9-generic root=UUID=34f3806f-36b8-494d-be1778325684a0a5 ro single initrd /boot/initrd.img-2.6.22-9-generic Simpan dan keluar, lalu restart kompi. Selamat mencoba... posted by .:CyberColombuzz:. at 10:15 AM 0 comments links to this post

Bandwidth Limiter dengan Delay Pools (Lanjutan squid2.6.STABLE12)


Pada installasi squid di artikel sebelumnya saya membuat satu blok script dengan nama Parameter Delaypool pada file /etc/squid.conf, berikut ini cuplikannya: #-------------------------------------------------------------------------# Parameter Delaypool #-------------------------------------------------------------------------acl dadhee src 192.168.0.111/255.255.255.255 # Access Control List dengan nama dadhee acl server src 192.168.0.254/255.255.255.255 # acl dengan nama server acl umum src 192.168.0.0/255.255.255.0 acl fenti src 192.168.0.11 acl TIME time SMTWHFA 08:00-17:00 # acl dengan nama TIME [nama_hari] [waktu_akses] acl download url_regex -i ftp \.exe$ \.mp3$ \.mp4$ \.tar.gz$ \.gz$ \.tar.bz2$ \.rpm$ \.zip$ \.rar$ acl download url_regex -i ftp \.mp3$ \.mp4$ \.tar.gz$ \.gz$ \.tar.bz2$ \.rpm$ \.zip$ \.rar$ acl download url_regex -i \.avi$ \.mpg$ \.mpeg$ \.rm$ \.iso$ \.wav$ \.mov$ \.dat$ \.mpe$ \.mid$ acl download url_regex -i \.midi$ \.rmi$ \.wma$ \.wmv$ \.ogg$ \.ogm$ \.m1v$ \.mp2$ \.mpa$ \.wax$ acl download url_regex -i \.m3u$ \.asx$ \.wpl$ \.wmx$ \.dvr-ms$ \.snd$ \.au$ \.aif$ \.asf$ \.m2v$ acl download url_regex -i \.m2p$ \.ts$ \.tp$ \.trp$ \.div$ \.divx$ \.mod$ \.vob$ \.aob$ \.dts$ acl download url_regex -i \.ac3$ \.cda$ \.vro$ \.deb$ delay_pools delay_class delay_parameters delay_access delay_access delay_access # bandwidth 8 delay_class delay_parameters delay_access delay_access delay_access # 1 1 1 1 1 kbytes/sec, 2 2 2 2 bandwidth allow bila file 2 8000/8000 allow download deny allow allow deny yang diakses melebihi 4 1 -1/-1 dadhee server all 64Kbte 2 1000/64000 umum TIME all unlimited

delay_class delay_parameters delay_access delay_access delay_access # bandwidth 4 delay_class delay_parameters delay_access delay_access delay_access

3 3 3 3 3 kbytes/sec, bila file yang 3 3 allow allow download deny diakses melebihi 32

1 -1/-1 umum !TIME all Kbyte 1 4000/32000 fenti TIME all

3 3 3 allow

allow download deny

Penjelasan: delay_pools Adalah pen-deklarasian [jumlah berapa delay_pools delay_pools] kita buat.

yang

akan

delay_class Adalah pen-deklarasian mengenai class pembagian bandwidth dari setiap pool. Dengan syarat 1 pool hanya boleh memiliki 1 class

Berikut

adalah

pembagian

class

bagaimana

cara

membagi

bandwidth:

Class 1: Bandwidth yang tersedia akan diberikan sama rata kepada setiap user squid. Contoh: apabila total bandwidth 256 kbps, maka akan dipakai bersama untuk keperluan browsing. Class 2: Bandwidh yang tersedia akan dibatasi untuk keperluan download dan sisanya digunakan untuk keperluan browsing secara bersama oleh user-user squid. Contoh: apabila total bandwidth 256 kbps, Dipakai 64 kbps untuk keperluan download dan sisanya 192 kbps untuk keperluan browsing.

Class 3: Bandwidth yang tersedia akan dibatasi menurut jumlah network yang terkoneksi. Dan tiap-tiap user squid dalam wilayah network tersebut akan menerima sama rata sesuai dengan total bandwidth per network. Contoh: Misal total bandwidth 256 kbps, 64 kbps dipakai untuk browsing dan sisanya dipakai untuk keperluan lain. Dalam jaringan terbagi 3 network, A(192.168.1.0/24), B(192.168.2.0/24) dan C(192.168.3.0/24). Misal oleh admin jatah tiap-tiap network tersebut 64 kbps. Maka,

User-user yang online pada net A akan mendapat bandwidth sama besar dari total 64 kbps. User-user yang online pada net B akan mendapat bandwidth sama besar dari total 64 kbps. User-user yang online pada net C akan mendapat bandwidth sama besar dari total 64 kbps. misal: delay_class delay_class

1 2

2 3

# #

pool pool

1 2

menggunakan menggunakan

type type

class class

2 3

delay_access [nama_acl] Memberikan batasan siapa saja yang diperbolehkan menggunakan delay pools ini dengan memanggil nama bagian acl (Access Control List). Dengan catatan setelah menentukan batasan jangan lupa akhiri dengan 'deny all'. Contoh: delay_access 1 allow dadhee delay_access 1 deny all delay_access 2 allow admin delay_access 2 deny all

delay_parameters Ini adalah rule terpenting dari delay_pools, mempunyai format yang disesuaikan dengan class yang dipakai. Di setiap tipe yang dipakai hanya ada satu aturan main yaitu restore/max. restore adalah indikator maksimum kecepatan data yang dapat dilewatkan bila harga max sudah terlampaui, dalam satuan bytes/second. max adalah besarnya file yang dapat dilewatkan tanpa melewati proses delay, dalam satuan bytes. Misalkan: Class 1: delay_parameter [pool individual] Contoh: delay_parameters 1 1000/128000 Berarti semua network akan mendapatkan bandwidth yang sama di pool nomor 1. Sebesar 1 kbytes/second atau setara dengan 8 kbps dengan burstable (maks bandwidth yang dapat diakses) sebesar 128 kb. Class 2: Contoh: delay_parameters 1 64000/64000 1000/128000 Berarti squid akan memakai bandwidth maksimum (64000*8) sama dengan 512 kbps dari semua bandwidth. Apabila terdapat network yang berbeda, maka total yang dihabiskan tetap 512 kbps dan tiap user akan mendapat bandwidth maksimum 1

kbytes.second

(8

kbps),

dengan

burstable

64

kb.

Class 3: Contoh: delay_parameters 1 32000/32000 8000/8000 1000/128000 Berarti squid akan memakai bandwidth maksimum (32000*8) sama dengan 256 kbits dari semua bandwidth. Apabila terdapat lebih dari satu network, maka setiap network akan dipaksa maksimum (8000*8) sama dengan 64 kbps dan tiap user pada satu network akan mendapat bandwidth maksimum 1 kbytes/sec (8 kbps), dengan burstable 64 kb. CATATAN: 1

byte

bit.

Waktu akses: Penjelasan pada baris: acl TIME time SMTWHFA 08:00-17:00 Adalah bentuk acl pewaktuan yang dimana SMTWHFA berarti: S=Sunday, M=Monday, T=Tuesday, dan seterusnya Bentuk baris acl TIME time SMTWHFA 08:00-17:00 harus diikuti dengan: delay_access [delay_pools] allow [nama_acl_download] TIME untuk memperbolehkan menggunakan fasilitas download berlaku selama 7 hari dan dengan batasan waktu dari jam 08:00 sampai 17:00. Atau delay_access [delay_pools] deny [nama_acl_download] TIME untuk menolak menggunakan fasilitas download pada waktu yang sudah ditentukan. posted by .:CyberColombuzz:. at 11:05 AM 3 comments links to this post

Friday, August 03, 2007

squid-2.6.STABLE12 Installasi dan konfigurasi sebagai proxy filtering, cache server, dan bandwidth limiter
Salam opensource..! Saya rencanakan artikel ini di bagi ke beberapa bagian. Untuk artikel yang pertama ini saya khususkan pada cara installasi, konfigurasi sederhana dan bagaimana cara menggunakan squid. Untuk mendapatkan squid bisa di download di sini. Dalam artikel ini saya menggunakan squid 2.6 STABLE 12. Berikut adalah cara installasi squid paket tarball. Selalu menggunakan root user dalam meng-install.
root# tar xfvz squid-2.6.STABLE12.tar.gz -C /usr/local/share root# cd /usr/local/share root# ./configure --prefix=/usr/local/squid --sysconfdir=/etc/ --sbindir=/usr/local/squid/sbin -bindir=/usr/local/squid/sbin --enable-linux-netfilter --enable-delay-pools --enable-snmp --enablecache-digest --enable-useragent-log --enable-arp-acl --enable -gnuregex --enable-icmp --enablehtcp --enable-ssl --enable-large-cache-files --enable-carp --with-pthreads --enable-removalpolicies=heap --enable-arp-acl --with-large-files --enable-forw-via-db --enable-leakfinder --enable-

storeio=diskd,ufs languages=English root# root#

--enable-truncate

--enable-err-languages=English

--enable-default-errmake install

make

Apabila sudah diinstall maka yang perlu diperhatikan adalah letak dari file squid.conf yang ada di /etc/squid.conf dan letak file-file yang dibutuhkan squid di /usr/local/squid/. Buat
root# root# mkdir chown -Rf

direktori
--mode=777 squid:squid

cache:
/usr/local/squid/var/cache/ /usr/local/squid/var/cache/

Buat
root# useradd d

user
/usr/local/squid/var/cache/ -r s /dev/null squid >/dev/null

squid:
2>&1

Buat
root# root# root# root#

file
chown chmod

kosong
touch touch -Rf -Rf

access.log

dan

cache.log:

/usr/local/squid/var/logs/access.log /usr/local/squid/var/logs/cache.log squid:squid /usr/local/squid/var/logs/ 777 /usr/local/squid/var/cache/

Download
root#

file

squid.conf.tar.gz
tar xfvz

di

sini.

Lalu

ekstrak

file

tersebut
-C

di

/etc/.
/etc/

squid.conf.tar.gz

Setelah meng-ekstrak file squid.conf.tar.gz di /etc/ langkah selanjutnya adalah membuat direktori /usr/local/squid/etc/squid/. Direktori ini akan menjadi tempat rule file manajemen akses untuk browsing dari client.
root# root# root# root# cd mkdir mkdir chown -Rf squid:squid /usr/local/squid etc squid /usr/local/squid/etc/

Langkah selanjutnya adalah membuat rule berupa file-file yang isinya adalah namanama domain yang kita ijinkan/tidak untuk di browsing oleh komputer client. Atau untuk lebih gampangnya silahkan download file-file tersebut disini. Kemudian ekstrak file tersebut di /usr/local/squid/etc/squid/. Setelah di ekstrak akan berisi 8 file dengan nama masing-masing: domains_agressif, domains_hacking, domains_warez, noporn, porn, urls_agressif, urls_hacking, dan urls_warez. Ubah kepemilikan file-file tersebut:
root# chown -Rf squid:squid /usr/local/squid/etc/

File-file ini berhubungan dengan blok konfigurasi "Manajemen Akses" di /etc/squid.conf. Penjelasan, dalam blok "Manajemen Akses" ada baris sbb:
acl http_access porn url_regex deny "/usr/local/squid/etc/squid/porn" porn

Maksudnya adalah kita membuat acl atau rule pada URL address yang dibuka di komputer client yang melewati proxy, dengan rule yang disimpan pada /usr/local/squid/etc/squid/porn. Pada baris kedua, http_access deny [nama_acl] berarti menolak semua list domain yang telah dideklarasikan oleh 'acl [nama_acl]',

apabila komputer-komputer client membuka salah satu rule pada file porn (nama_acl), yang terletak di /usr/local/squid/etc/squid/. Begitu pula sebaliknya,
noporn

masih

dalam
allow

blok

"Manajemen

Akses"

sbb:

acl http_access

url_regex

"/usr/local/squid/etc/squid/noporn" noporn

Berarti kita membuat acl dengan nama 'noporn' dan rule-nya disimpan di /usr/local/squid/etc/squid/noporn. Sedangkan http_access allow [nama_acl] adalah syntax untuk mengijinkan komputer client membuka rule [nama_acl]. Blok "Manajemen Akses" di /etc/squid.conf ini berfungsi sebagai filtering browsing. Hal ini berlaku pada komputer client yang melewati proxy squid. Ini dapat mencegah user pada client membuka alamat situs-situs yang tidak kita inginkan untuk dibuka. Untuk menjalankan squid untuk pertama kali kita harus membuat cache terlebih dahulu dengan perintah:
root# /usr/local/squid/sbin/squid -z

Apabila pada saat pembentukan cache kita mengalami masalah folder cache tidak bisa ditulis oleh squid, maka cek kembali hak kepemilikan terhadap file tersebut. Atau lakukan perintah dibawah ini, serta ulangi langkah diatas.
root# chown -Rf squid:squid /usr/local/squid/*

Cek
root#

apakah

service

squid

sudah

berjalan,

dengan

perintah:
-NCdl

/usr/local/squid/sbin/squid

atau
root#

dengan
/usr/local/squid/sbin/squid

perintah:
-sYD

Jika ditemukan kesalahan konfigurasi akan terlihat dengan perintah ini. Jika konfigurasi sudah fix, silahkan terminate squid dengan menekan Ctrl+C. Kemudian jalankan squid dengan perintah:
root# /usr/local/squid/sbin/squid -D

Apabila kita ingin squid jalan setiap kali kompi restart, ketikan command berikut:
root# root# echo echo "/usr/local/sbin/squid "/usr/local/sbin/squid -z" start" >> >> /etc/rc.local /etc/rc.local

(akan ada penambahan/revisi pada tutorial ini)

posted by .:CyberColombuzz:. at 4:08 PM 4 comments links to this post

Burning CD lewat console mode

Salam open source..! Burning CD lewat console? Kenapa tidak... Silahkan surfing di situs BashBurn. Sebelumnya download dulu aplikasi BashBurn. Setelah download selesai kita akan mendapatkan file BashBurn-2.1.1.tar.gz. Cara installasinya gampang:
root# tar xfvz BashBurn-2.1.1.tar.gz -C /usr/local/share

Masuk ke direktori /usr/local/share tempat dimana file BashBurn-2.1.1.tar.gz di-ekstrak, lalu install dengan meng-eksekusi file Install.sh, dan ikuti perintahnya
root# root# cd /usr/local/share ./Install.sh

Cara
root#

menjalankan yang

aplikasi akan

ini muncul

adalah

dengan

mengetikan dibawah

perintah:
bashburn

Maka

seperti

menu

ini:

Kita diharuskan terlebih dahulu meng-Configure BashBurn, maka tekan angka '7' kemudian 'enter'.

Disini saya menggunakan Ubuntu Feisty Fawn dimana path dari cdrom berada di /media/cdrom0. Apabila telah selesai mengkonfigurasi maka 'Apply defaults' dengan mengetikan angka '26', lalu '0' untuk kembali ke menu utama. Untuk cara burn data silahkan baca manualnya, terlalu panjang kalau saya sertakan juga disini :D. Selamat mencoba... posted by .:CyberColombuzz:. at 2:51 PM 0 comments links to this post

Menginstall Webmin di Ubuntu Feisty Fawn


Salam open source...! Ini artikel kedua mengenai installasi webmin di blog ini. Pada artikel pertama installasi webmin terkesan mudah dan tidak ada masalah. Masalah ditemui ketika meng-install webmin pada distro Ubuntu Feisty Fawn. Ketika googling banyak user yang menyarankan agar terlebih dahulu meng-install LAMPP. Saya lebih memilih tidak menuruti suara mayoritas di google, lebih baik kalau kita punya pemikiran sendiri kan.. siapa tau orang lain mengikuti jejak yang sudah kita tinggalkan... :D Pertama-tama pembaca harus mengikuti aturan main yang mau gak mau harus disepakati bersama, karena ini blog saya. Hehehe... Saya lebih senang installasi menggunakan console mode dan bertindak sebagai root user (bukan memakai perintah "sudo"). Source webmin bisa didapatkan di sini. Dan untuk mendapatkannya kita butuh bantuan 'wget'.
root# wget http://prdownloads.sourceforge.net/webadmin/webmin_1.340_all.deb

Setelah kita men-download 'webmin_1.3.40_all.deb', selanjutnya installasi dengan perintah.


root# dpkg -i Selecting previously deselected (Reading database ... 135556 files and Unpacking webmin (from Setting up webmin Webmin install complete. You can now as root with your root password, or as to run commands webmin_1.340_all.deb package webmin. directories currently installed.) webmin_1.340_all.deb) ... (1.340) ... login to https://pegel-linux:10000/ any user who can use sudo as root.

Kalau pada saat installasi webmin, system meminta library-library yang kurang maka

ketikan
root# apt-

perintah
get install

ini:
-f

Apabila sudah berhasil meng-install, langkah selanjutnya adalah mengganti default password webmin dengan password baru yang kita inginkan. Aturannya: changepass.pl .
root# /usr/share/webmin/changepass.pl /etc/webmin root [password]

Langkah berikutnya hampir sama dengan langkah-langkah installasi pada artikel pertama. Selamat mencoba...

posted by .:CyberColombuzz:. at 9:34 AM 0 comments links to this post

Wednesday, August 01, 2007

Monitoring Ubuntu Desktop dan Service Menggunakan Monit


Satu lagi aplikasi sederhana untuk me-monitor proses, file, direktori dan device menggunakan web interface. Dengan aplikasi jenis monit ini user dapat me-maintain systemnya dari jarak jauh dan dapat langsung meng-eksekusi daemon pada saat shell tidak dapat diandalkan. Berikut adalah fitur monit yang diambil dari man page. Monit Features * * * * * * * * * * * * * * * * * Daemon mode poll programs at a specified interval Monitoring modes active, passive or manual Start, stop and restart of programs Group and manage groups of programs Process dependency definition Logging to syslog or own logfile Configuration comprehensive controlfile Runtime and TCP/IP port checking (tcp and udp) SSL support for port checking Unix domain socket checking Process status and process timeout Process cpu usage Process memory usage Process zombie check Check the systems load average Check a file or directory timestamp Alert, stop or restart a process based on its characteristics

* MD5 checksum for programs started and stopped by monit * Alert notification for program timeout, restart, checksum, stop resource and timestamp error * Flexible and customizable email alert messages *Protocol verification. HTTP, FTP, SMTP, POP, IMAP, NNTP, SSH, DWP,LDAPv2 and LDAPv3 *An http interface with optional SSL support to make monit accessible from a webbrowser Cara mendapatkan monit di Ubuntu Feisty Fawn sangat gampang, tinggal ketikan perintah ini pada console mode. (Lagi-lagi saya lebih senang bertindak sebagai root).
root# apt-get install monit

Setelah monit ter-install maka langkah selanjutnya adalah /etc/monit/monitrc. Tambahkan baris-baris berikut pada file tersebut.

meng-edit

file

set daemon 120 # monit akan refresh tiap 2 menit set logfile syslog facility log_daemon set httpd port 2812 # port http yang digunakan monit use address localhost # memungkinkan diakses dari localhost allow 192.168.0.111/255.255.255.255 # mengijinkan akses dari ip tertentu allow admin:monit # User: admin dan Password:monit # Check HTTPD check process apache2 with pidfile /var/run/apache2.pid start program = "/etc/init.d/apache2 start" stop program = "/etc/init.d/apache2 stop" # Check performa CPU if cpu is greater than 60% for 2 cycles then alert if cpu > 80% for 5 cycles then restart if totalmem > 200.0 MB for 5 cycles then restart if children > 250 then restart if loadavg(5min) greater than 10 for 8 cycles then stop if 3 restarts within 5 cycles then timeout group server # Check MySQL check process mysql with pidfile /var/run/mysqld/mysqld.pid group database start program = "/etc/init.d/mysql start" stop program = "/etc/init.d/mysql stop" if failed host 127.0.0.1 port 3306 then restart if 5 restarts within 5 cycles then timeout # Check SSHD check process sshd with pidfile /var/run/sshd.pid start program "/etc/init.d/ssh start" stop program "/etc/init.d/ssh stop" if failed port 22 protocol ssh then restart

if

restarts

within

cycles

then

timeout

include include /etc/monit/mysql.monitrc

/etc/monit/default.monitrc

Disini penulis hanya mengidentifikasikan 3 service saja. Apabila ingin memonitor service lain tinggal ditambahkan konfigurasi di baris bawahnya, isi script konfigurasi tidak jauh beda dari yang sebelumnya. Keterangan lebih lanjut bisa di http://www.tildeslash.com/monit/doc/manual.php . Apabila selesai di konfigurasi awal, kita bisa cek konfigurasi tadi dengan perintah:
root# monit -t

Sebelum menjalankan monit yang perlu diperhatikan adalah meng-edit terlebih dahulu file /etc/default/monit . Ganti nilai '0' dengan '1' pada baris: startup = 0 menjadi startup = 1 Lalu start aplikasi monit dengan perintah:
root# /etc/init.d/monit start

Menjalankan aplikasi ini di kompi klien dengan membuka web browser dan ketikan http://[ip_server]:[port_monit]/ . Perhatikan port default monit 2812 tidak di block oleh server. misal: http://www.pegel-linux.com:2812/ Maka dialog pertama yang akan muncul adalah:

Masukan username: admin dan password: monit. Lalu OK.

Tampilan setelah masuk seperti ini:

Selamat mencoba.

Você também pode gostar