How to crack wep: aircrack-ptw and aircrack-ng with la Fonera
In rete ci sono miliardi di tutorial che...Leggi tutto
Monit è un ottimo strumento opersource che permette di monitorare dei servizi sotto linux, se il servizio non risponde o cade Monit lo ritira su. Con monit si possono monitorare,servizi, stato dei file, directory periferiche etc.. nel caso di anomalie il software ci avvisa e ripristina in automatico i servizi. E’facilmente configurabile,leggero e stabile; dire l’ennesimo software che può salvare la vita in situazioni anomale. Io l’ho installato e configurato su Debian Lenny per tenere sotto controllo Mysql,Lighttpd,Postfix e Proftpd di seguito trovate un semplice how to che spiega come configurare Monit..
Qualche informazione veloce, Monit si configura da linea di comando e si consulta tramite web, ha un suo webserver che lo rende indipendente da apache,lighttpd etc.. in rete si trovano tantissimi esempi di configurazione per monitorare i servizi più disparati. Quindi dopo aver installato e configurato monit lo potrete raggiungere tramite browser all’indirizzo del vostro server su una porta custom scelta da voi. Ovviamente potete specificare un’utenza amministrativa con relativa password.
Partiamo con l’installazione, distribuzione di riferimento Debian Lenny.
aptitude install monit
Il file di configurazione di Monit è monitrc e si trova in /etc/monit/monitrc
Ecco il mio file di configurazione che tiene monitorato Mysql,Postfix,Ssh,proftpd e Lighttpd.
lablxtst.localdomin è il nome della mia macchina di Test, il demone fà un controllo ogni 60 secondi.
Il file di configurazione di Monit è monitrc e si trova in /etc/monit/monitrc
Ecco il mio file di configurazione che tiene monitorato Mysql,Postfix,Ssh,proftpd e Lighttpd.
lablxtst.localdomin è il nome della mia macchina di Test, il demone fà un controllo ogni 60 secondi, l’utenza amministrativa è admin e la password test.
set daemon 60 set logfile syslog facility log_daemon set mailserver localhost set mail-format { from: monit@lablxtst.localdomain } set alert tech@lablxtst.localdomain set httpd port 2812 and SSL ENABLE PEMFILE /var/certs/monit.pem allow admin:test check process proftpd with pidfile /var/run/proftpd.pid start program = "/etc/init.d/proftpd start" stop program = "/etc/init.d/proftpd stop" if failed port 21 protocol ftp then restart if 5 restarts within 5 cycles then timeout 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 5 restarts within 5 cycles then timeout 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 process postfix with pidfile /var/spool/postfix/pid/master.pid group mail start program = "/etc/init.d/postfix start" stop program = "/etc/init.d/postfix stop" if failed port 25 protocol smtp then restart if 5 restarts within 5 cycles then timeout check process lighttpd with pidfile /var/run/lighttpd.pid group www-data start program = "/etc/init.d/lighttpd start" stop program = "/etc/init.d/lighttpd stop" if cpu > 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 failed host lablxtst.localdomain port 80 protocol http and request "/index.html" then restart if 3 restarts within 5 cycles then timeout
Per lighttpd voglio far notare che ho fatto diversi test e alla riga:
if failed host lablxtst.localdomain port 80 protocol http and request "/index.html"
è importante specificare il nome completo del server, ho provato con ip e localhost e 127.0.0.1 ma lighttpd mi restituiva sempre errore 404 e ovviamente il controllo falliva.
configuriamo poi Monit per rispondere in https sulla porta 2812, creiamo prima il certificato
mkdir /var/certs cd /var/certs
Creiamo un file di configurazione per il cerfificato
vi /var/certs/monit.cnf
Il file deve essere come il seguente,
# create RSA certs - Server RANDFILE = ./openssl.rnd [ req ] default_bits = 1024 encrypt_key = yes distinguished_name = req_dn x509_extensions = cert_type [ req_dn ] countryName = IT countryName_default = IT stateOrProvinceName = Italy stateOrProvinceName_default = Milan localityName = Milan localityName_default = Milan organizationName = Local Company organizationName_default = Monit Inc. organizationalUnitName = Technical Department organizationalUnitName_default = Technical Department commonName = lablxtst.localdomain commonName_default = lablxtst.localdomain emailAddress = tech@lablxtst.localdomain emailAddress_default = tech@lablxtst.localdomain [ cert_type ] nsCertType = server
Ovviamente modificate i campi con i riferimenti che preferite.
Creiamo i certificati
openssl req -new -x509 -days 365 -nodes -config ./monit.cnf -out /var/certs/monit.pem -keyout /var/certs/monit.pem openssl gendh 512 >> /var/certs/monit.pem openssl x509 -subject -dates -fingerprint -noout -in /var/certs/monit.pem chmod 700 /var/certs/monit.pem
Abilitiamo infine il Demone dicendogli di controllare lo stato dei servizi ogni 60 secondi.
vi /etc/default/monit
Ecco un esempio completo di come deve essere il file.
# Defaults for monit initscript # sourced by /etc/init.d/monit # installed at /etc/default/monit by maintainer scripts # Fredrik Steen <stone@debian.org> # You must set this variable to for monit to start startup=1 # To change the intervals which monit should run uncomment # and change this variable. CHECK_INTERVALS=60
Attiviamo Monit
/etc/init.d/monit start
Puntiamo poi con il browser all’indirizzo del nostro server https://nome-server:2812 inseriamo admin come user e test come password e il risultato che dovremmo ottenere è questo:
Ovviamente voi modificare user e password andando a toccare il file /etc/monit/monitrc
Al solito se avete suggerimenti o correzioni da segnalare i commenti sono a vostra disposizione.
Vota l'articolo
Ti è piaciuto questo articolo? allora iscrivi alla newsletter, riceverai ogni nuovo post via mail!
Loading...Se preferiferisci i feed ricordati di iscriverti ai miei Feed! 
Guardare le previsioni tramite Google Earth!…
Ho trovato il tuo articolo interessante e ho aggiunto il trackback al mio blog!…
[...] con Lighttpd e con i demoni C++ di Wardrome non è stato semplicissimo, ho trovato molto utile questa guida. Share and [...]
Di nulla figurati, sono contento che l’articolo sia piaciuto ciaooo