3 581
contributi
m (non compatibilità (guida più aggiornata già esistente)) |
|||
(8 versioni intermedie di 2 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Versioni compatibili | ONLY | Squeeze | Wheezy}} | |||
{{Warningbox | Per Debian Stretch e successive si veda la guida aggiornata: [[Monitorare un server con Munin e Monit - Stretch]]}} | |||
== Introduzione == | == Introduzione == | ||
In questa guida vedremo come monitorare un server Debian Wheezy attraverso gli strumenti ''munin'' e ''monit''. | In questa guida vedremo come monitorare un server Debian Wheezy attraverso gli strumenti ''munin'' e ''monit''. | ||
Riga 33: | Riga 35: | ||
* decommentiamo le linee ''dbdir, htmldir, logdir, rundir, tmpldir'' | * decommentiamo le linee ''dbdir, htmldir, logdir, rundir, tmpldir'' | ||
* sostituiamo ''localhost.localdomain'' con il FQDN del nostro server, ad esempio ''server1.example.com'', nella sezione ''simple host tree'' | * sostituiamo ''localhost.localdomain'' con il FQDN del nostro server, ad esempio ''server1.example.com'', nella sezione ''simple host tree'' | ||
La configurazione di Munin per Apache si trova nel file < | La configurazione di Munin per Apache si trova nel file <code>/etc/apache2/conf.d/munin</code> (che attualmente è un [[symlink]] verso <code>/etc/munin/apache.conf</code>): tra le altre cose definisce un alias chiamato ''munin'' alla directory di output dei report HTML di Munin <code>/var/cache/munin/www</code>; questo significa che possiamo accedere alle statistiche di Munin da tutti i Virtual Host del nostro webserver attraverso il percorso relativo <code>/munin</code> (ad esempio ''http://www.example.com/munin''). | ||
<br/> | <br/> | ||
Apriamo il file in questione: | Apriamo il file in questione: | ||
Riga 51: | Riga 53: | ||
Allow from 192.168.0.0/24 | Allow from 192.168.0.0/24 | ||
</pre> | </pre> | ||
altrimenti Munin sarà accessibile solo da localhost. | altrimenti Munin sarà accessibile solo da [[localhost]]. | ||
<br/><br/> | <br/><br/> | ||
Riavviamo Apache: | Riavviamo Apache: | ||
Riga 61: | Riga 63: | ||
# /etc/init.d/munin-node restart | # /etc/init.d/munin-node restart | ||
</pre> | </pre> | ||
Attendiamo qualche minuto, per dare a Munin il tempo di generare le prime statistiche, e rechiamoci all'indirizzo http://ip.del.mio.server/munin per vedere i primi grafici. | Attendiamo qualche minuto, per dare a Munin il tempo di generare le prime statistiche, e rechiamoci all'indirizzo '''<nowiki>http://ip.del.mio.server/munin</nowiki>''' per vedere i primi grafici. | ||
== Protezione di Munin == | == Protezione di Munin == | ||
È una buona idea proteggere tramite password l'accesso ai grafici HTML prodotti da Munin; vogliamo forse che tutto il mondo veda come sta funzionando il nostro server? | |||
<br/> | <br/> | ||
Per proteggere Munin dobbiamo creare un file di password < | Per proteggere Munin dobbiamo creare un file di password <code>/etc/munin/munin-htpasswd</code> e abilitare un utente chiamato ''admin'': | ||
<pre> | <pre> | ||
# htpasswd -c /etc/munin/munin-htpasswd admin | # htpasswd -c /etc/munin/munin-htpasswd admin | ||
Riga 106: | Riga 108: | ||
# apt-get install monit | # apt-get install monit | ||
</pre> | </pre> | ||
Il file di configurazione è < | Il file di configurazione è <code>/etc/monit/monitrc</code>. Il file di default contiene un sacco di esempi. Nel nostro caso noi vogliamo: | ||
* monitorare proftpd, sshd, mysql, apache, postfix | * monitorare proftpd, sshd, mysql, apache, postfix | ||
* abilitare l'interfaccia di monit sulla porta 2812 | * abilitare l'interfaccia di monit sulla porta 2812 | ||
Riga 126: | Riga 128: | ||
set alert root@localhost | set alert root@localhost | ||
set httpd port 2812 and | set httpd port 2812 and | ||
use address IP.DEL.NOSTRO.SERVER | |||
SSL ENABLE | SSL ENABLE | ||
PEMFILE /var/certs/monit.pem | PEMFILE /var/certs/monit.pem | ||
Riga 296: | Riga 299: | ||
and request "/monit/token" then restart | and request "/monit/token" then restart | ||
</pre> | </pre> | ||
che significa che Monit prova a connettersi a www.example.com sulla porta 80 e cerca di accedere al file < | che significa che Monit prova a connettersi a www.example.com sulla porta 80 e cerca di accedere al file <code>/monit/token</code>, il cui path completo è <code>/var/www/www.example.com/web/monit/token</code>, supponendo che la root del nostro sito web sia <code>/var/www/www.example.com/web</code>. Di conseguenza dobbiamo creare il file: | ||
<pre> | <pre> | ||
# mkdir /var/www/www.example.com/web/monit | # mkdir /var/www/www.example.com/web/monit | ||
# echo "hello" > /var/www/www.example.com/web/monit/token | # echo "hello" > /var/www/www.example.com/web/monit/token | ||
</pre> | </pre> | ||
== Protezione di Monit == | |||
Adesso occorre creare il certificato pem (<code>/var/certs/monit.pem</code>) di cui ci serviremo per proteggere via SSL l'interfaccia web di Monit: | |||
<pre> | |||
# mkdir /var/certs | |||
# cd /var/certs | |||
</pre> | |||
Abbiamo bisogno di una configurazione OpenSSL per creare il nostro certificato. Il file di configurazione può essere come il seguente: | |||
<pre> | |||
# nano /var/certs/monit.cnf | |||
</pre> | |||
<pre> | |||
# create RSA certs - Server | |||
RANDFILE = ./openssl.rnd | |||
[ req ] | |||
default_bits = 2048 | |||
encrypt_key = yes | |||
distinguished_name = req_dn | |||
x509_extensions = cert_type | |||
[ req_dn ] | |||
countryName = Country Name (2 letter code) | |||
countryName_default = MO | |||
stateOrProvinceName = State or Province Name (full name) | |||
stateOrProvinceName_default = Monitoria | |||
localityName = Locality Name (eg, city) | |||
localityName_default = Monittown | |||
organizationName = Organization Name (eg, company) | |||
organizationName_default = Monit Inc. | |||
organizationalUnitName = Organizational Unit Name (eg, section) | |||
organizationalUnitName_default = Dept. of Monitoring Technologies | |||
commonName = Common Name (FQDN of your server) | |||
commonName_default = server.monit.mo | |||
emailAddress = Email Address | |||
emailAddress_default = root@monit.mo | |||
[ cert_type ] | |||
nsCertType = server | |||
</pre> | |||
Ora possiamo creare il certificato: | |||
<pre> | |||
# openssl req -new -x509 -days 3650 -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 | |||
</pre> | |||
Finalmente, possiamo avviare Monit: | |||
<pre> | |||
# /etc/init.d/monit start | |||
</pre> | |||
Puntando il browser all'indirizzo '''<nowiki>https://www.example.com:2812</nowiki>''' e facendo login con le credenziali impostate in precedenza nella configurazione (admin / test) raggiungeremo l'interfaccia web di Monit. | |||
{{Autori | |||
|Autore = [[Utente:Ferdybassi|Ferdybassi]] 15:31, 09 mar 2014 (CEST) | |||
}} | |||
[[Categoria: Monitoraggio]] |
contributi