Old:Nagios: monitorare server e servizi: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
mNessun oggetto della modifica
Riga 1: Riga 1:
__NOTOC__
Nagios ([http://www.nagios.org Home Page]) è uno strumento molto usato ed utilissimo per il monitoraggio di server e servizi. All'inizio, per molti utenti, è un po' complicato da configurare, ma dopo aver capito il funzionamento risulterà semplice, potente e versatile, attributi necessari per questo genere di strumenti.
{|style="-moz-border-radius: 0.5em; width:100%; margin-top:+.7em; background-color:#F9F9FF; border: 1px solid #ccc"
|style="width:50%;color:#000"|
{| style="width:280px;border:solid 0px;background:none"
|-
| style="width:280px;text-align:center; white-space: nowrap; color:#000" |
<h1 style="font-size: 162%; border: none; margin: 0; padding:.1em; color:#000">
Indice delle Guide
</h1>
<div style="top: +0.2em; font-size: 100%">
Di seguito troverete l''''indice completo''' delle guide contenute su [[Guide@Debianizzati.Org:About|Wiki]].


Potete anche navigare tra le guide scegliendo tra le '''[[Lista Categorie|categorie]]''' qua a destra.
= Installazione =
</div>
La macchina su cui verrà installato Nagios è un Debian Stable (Etch). Installeremo la versione 2 di Nagios, con i relativi pacchetti per avere un maggior numero di plugin e immagini (vedremo dopo come usarle).
|-
|}
<!-- ----------Portals Follow----------------------------- -->
|style="width:11%;font-size:95%;color:#000"|
* [[:Categoria:Apt|Apt]]
* [[:Categoria:Desktop|Desktop]]
* [[:Categoria:Hardware|Hardware]]
* [[:Categoria:Kernel|Kernel]]
|style="width:11%;font-size:95%;color:#000"|
* [[:Categoria:Laptop|Laptop]]
* [[:Categoria:Networking|Networking]]
* [[:Categoria:Shell|Shell]]
* [[:Categoria:Server|Server]]
|style="width:13%;font-size:95%;color:#000"|
* [[:Categoria:Sicurezza|Sicurezza]]
* [[:Categoria:Sistema|Sistema]]
* [[:Categoria:Tips&Tricks|Tips&Tricks]]
* '''[[Lista Categorie]]'''
|}


Per installare nagios è sufficiente un:
<pre>
#  apt-get install nagios2 nagios2-common nagios-plugins nagios-images nagios-plugins-basic  nagios-plugins-standard
</pre>


Dopo aver scaricato (sono circa 3.5Mb) ed installato nagios provvediamo all'installazione di un web server (necessario per consultare la comoda [[web-interface]]); la mia scelta è ricaduta su apache2, anche perchè il server in questione ospiterà applicazioni scritte in php. Procediamo ad installare apache2 con:
<pre>
# apt-get install apache2 libapache2-mod-php5
</pre>


Questo Wiki - '''[[Guide@Debianizzati.Org:About|Guide@Debianizzati.Org]]''' - vuole essere prima di tutto un punto di raccolta ideale per le conoscenze acquisite dai singoli durante l'uso di '''Debian GNU/Linux''' in ambito casalingo e/o lavorativo, in modo che il sapere di uno diventi quello di tutti.


Le guide ritenute meglio scritte e pi� approfondite, dopo un processo di controllo e revisione a cui tutti siete liberi di partecipare, vengono classificate [[:Categoria:Debianized|Debianized]] e contrassegnate dalla [[Debian Swirl]]: http://guide.debianizzati.org/images/swirl.png. Per ulteriori informazioni sul processo di revisione vedere: [[Aiuto:Contents#Evoluzione_delle_guide|Evoluzione delle guide]].
= Configurazione =
== Apache ==
Al momento dell'installazione viene creato in modo automatico il file <tt>/etc/apache2/conf.d/nagios2.conf</tt> (il file è, a tutti gli effetti, un link simbolico al file <tt>/etc/nagios2/apache2.conf</tt>) con il seguente contenuto:
<pre>
# apache configuration for nagios 2.x
# note to users of nagios 1.x:
# throughout this file are commented out sections which preserve
# backwards compatibility with bookmarks/config for nagios 1.x. simply
# look for lines following "nagios 1.x:" comments.


Potete trovare un elenco completo delle guide '''Debianized''' in [[:Categoria:Debianized|questa pagina]].
ScriptAlias /cgi-bin/nagios2 /usr/lib/cgi-bin/nagios2
ScriptAlias /nagios2/cgi-bin /usr/lib/cgi-bin/nagios2
Segue la lista completa delle guide attualmente presenti:
# nagios 1.x:
__TOC__
#ScriptAlias /cgi-bin/nagios /usr/lib/cgi-bin/nagios2
#ScriptAlias /nagios/cgi-bin /usr/lib/cgi-bin/nagios2


== Mondo Debian ==
# Where the HTML pages live
=== Introduzione a Debian ===
Alias /nagios2 /usr/share/nagios2/htdocs
* [[L' Universo Debian]]
# nagios 1.x:
* [[La struttura della Distribuzione]]
#Alias /nagios /usr/share/nagios2/htdocs


=== Installazione ===
<DirectoryMatch (/usr/share/nagios2/htdocs|/usr/lib/cgi-bin/nagios2)>
* http://guide.debianizzati.org/images/swirl.png [[Guida a Grub]]
Options FollowSymLinks
* [[Jigdo | '''Jigdo''': Scaricare e Aggiornare le iso di Debian]]
* [[Note sull'installazione di Debian]]


=== Gestione dei Pacchetti ===
DirectoryIndex index.html
* [[Introduzione all' Apt System]]
* [[I repository ed il loro utilizzo]]
* http://guide.debianizzati.org/images/swirl.png [[Pulire Debian]]
* [[Apt-cdrom | '''Apt-cdrom''': aggiunta di cd/dvd nella lista dei repository]]
* [[Apt-file: ricerca all'interno dei pacchetti | '''Apt-file''': ricerca all'interno dei pacchetti]]
* [[Apt-listbugs: come monitorare i bug | '''Apt-listbugs''': come monitorare i bug]]
* [[Apt-zip: aggiornamenti senza una connessione veloce | '''Apt-zip''': aggiornamenti senza una connessione veloce]]
* [[Apt-spy: trovare i mirror pi� veloci | '''Apt-spy''': trovare i mirror pi� veloci]]
* [[APT uso avanzato: mixare releases diverse]]
* http://guide.debianizzati.org/images/swirl.png [[Impedire l' aggiornamento di un pacchetto]]
* [[Aptitude | '''Aptitude''': come amministrare i pacchetti]]
* [[Controllare lo stato di un pacchetto]]


=== Creazione e modifica dei pacchetti ===
AllowOverride AuthConfig
* http://guide.debianizzati.org/images/swirl.png [[Make-jpkg: Pacchettiziamo Java Sun| '''Make-jpkg''': Pacchettizziamo Java Sun]]
Order Allow,Deny
* [[Pacchetti binari e sorgenti]]
Allow From All
* [[Applicare una patch ad un pacchetto Debian]]
* [[Apt-build: ottimizzazione dei pacchetti | '''Apt-build''': ottimizzazione dei pacchetti]]
* [[Dpkg-sig: Firma dei packages .deb |  '''Dpkg-sig''': Firma dei packages .deb]]
* [[Pacchetizzare un tema per Bootsplash]]
* [[Backport da unstable in testing]]
* [[Pbuilder: compilazione in ambienti puliti]]


=== Gestione dei pacchetti Lato Server ===
AuthName "Nagios Access"
* [[Apt-Proxy: un proxy per i pacchetti Debian| '''Apt-Proxy''': un proxy per i pacchetti Debian]]
AuthType Basic
* [[Debmirror: creiamo un mirror Debian |'''Debmirror''': creiamo un mirror Debian]]
AuthUserFile /etc/nagios2/htpasswd.users
* [[Creare un Repository Debian]]
# nagios 1.x:
* [[Gestione di un repository con debarchiver]]
#AuthUserFile /etc/nagios/htpasswd.users
* [[Usare apt-cacher per creare una cache dei pacchetti usabile in una LAN]]
require valid-user
* [[Dupload per l'upload dei pacchetti Debian]]
</DirectoryMatch>


==Configurazione Sistema==
# Where the stylesheets (config files) reside
===Kernel===
#Alias /nagios2/stylesheets /etc/nagios2/stylesheets
* [[Linux Kernel in a Nutshell]] in Italiano (work in progress)
# nagios 1.x:
* [[Un kernel UNIX libero: Linux]] ''(stub)''
#Alias /nagios/stylesheets /etc/nagios2/stylesheets
* http://guide.debianizzati.org/images/swirl.png [[Debian Kernel Howto]]
* [[Esempio configurazione kernel]]
* [[Kernel2.6.10 - Framebuffer - Gensplash Patch]]
* [[Kernel 2.6 su Debian Woody]]
* [[Compilazione Kernel 2.6.11 con Bootsplash]]
* [[Pagina di manuale di module-assistant|Pagina di manuale di '''<tt>module-assistant</tt>''']]
* [[Low-latency 2.6 kernel per applicazioni audio realtime]]
* [[Script: Confronto Configurazioni Kernel]]
* [[Patch Con Kolivas: incrementare le prestazioni desktop|Patch '''Con Kolivas''': incrementare le prestazioni '''desktop''']]


===Sistema===
# Enable this ScriptAlias if you want to enable the grouplist patch.
* [[SysV | Il sistema SysV per la gestione dei Runlevel]]
# See http://apan.sourceforge.net/download.html for more info
* [[Udev e Debian]]
# It allows you to see a clickable list of all hostgroups in the
* [[Configurare il server X in Debian GNU/Linux]]
# left pane of the Nagios web interface
* [[Linux Admin Quick Reference]]
# XXX This is not tested for nagios 2.x use at your own peril
* [[Debian: accelerare GTK con Cairo e Glitz]]
#ScriptAlias /nagios2/side.html /usr/lib/cgi-bin/nagios2/grouplist.cgi
* [[Software Raid 1: configurazione e verifiche|'''Software Raid 1''': configurazione e verifiche]]
# nagios 1.x:
* [[Debian: software suspend e ibernazione per laptops]]
#ScriptAlias /nagios/side.html /usr/lib/cgi-bin/nagios2/grouplist.cgi
* [[Alternatives]]
</pre>
Il file contiene una bozza di configurazione per nagios che permette di raggiungere il servizio digitando, semplicemente <nowiki>http://IP/nagios2/</nowiki>. Questo sistema a me, personalmente, non piace, in quanto nagios sarebbe accessibile da qualsiasi sito ospitato sulla macchina, semplicemente digitando <nowiki>http://www.sito.it/nagios2/</nowiki>, non molto sicuro e pulito.


==== Sistema / Tips & Tricks: ====
Creeremo, quindi, un sottodominio dedicato a nagios, modificando il file nel seguente modo:
:* [[Impostare e modificare data e ora]]
<pre>
:* [[Impostare e modificare il layout della tastiera]]
:* [[Impostare la lingua italiana nel sistema]]
:* [[Tmpreaper: pulire le directory contenenti file temporanei]]


=== Desktop ===
<VirtualHost *:80>
* [[Configurare fluxbox]]
    ServerAdmin root@knio.it
* [[Ekiga: installazione e configurazione|'''Ekiga''': installazione e configurazione]]
#    DocumentRoot /var/www/nagios/
* [[DVD Backup: xDVDShrink per Debian]]
    ServerName nagios.knio.it
* [[Abilitare_Xinerama | Multi monitor con Xinerama]]
* [[Personalizzare il comportamento delle finestre con Devil's Pie]]


* [[Kde e mount automatico]]
    ErrorLog /var/log/apache2/nagios.knio.it_error.log
* [[Xfce e shutdown da utente]]
    CustomLog /var/log/apache2/nagios.knio.it_access.log combined
* [[Gimp: rendere un logo trasparente|'''Gimp''': rendere un logo trasparente]]
* [[LaTeX e Vim]]
* [[XGL e Beryl su KDE con schede ATI]]
* [[Debian: guida all' installazione di Enlightenment 17 - e17 cvs]]


==== Desktop / Tips & Tricks ====
    <Directory />
:* [[Desktop Search su Debian Etch: Installare Tracker]]
        AllowOverride All
:* [[Cambiare il Tema dei Cursori per il Mouse]]
        Options +Multiviews
:* [[Eseguire comandi con gli shortcuts di Gnome]]
        Options Indexes Includes FollowSymLinks MultiViews
:* [[Abilitare ESound con ALSA in Gnome]]
        DirectoryIndex index index.html
:* [[Nautilus: navigare con una sola finestra]]
    </Directory>
:* [[Antispam in Evolution con Bogofilter]]
:* [[Associare a Thunderbird il browser preferito]]
:* [[Associare ad Icedove il browser preferito]]
:* [[Velocizzare il boot senza cambiare sistema di init]]
:* [[Migliorare i font]] in firefox


=== Xorg / Xfree ===
    ScriptAlias /cgi-bin/nagios2 /usr/lib/cgi-bin/nagios2
* [[Installazione driver proprietari Ati]]
    ScriptAlias /nagios2/cgi-bin /usr/lib/cgi-bin/nagios2
* [[Installazione driver proprietari Nvidia]]
* [[Abilitare AIGLX con Compiz on Debian testing]]


===Applicazioni Esterne===
   
* [[Debian e sintesi vocale: installazione di festival e mbrola]]
    #Alias /nagios2/stylesheets /etc/nagios2/stylesheets
* [[Installazione Qemu con supporto accelerazione Kqemu]]
    Alias /nagios2 /usr/share/nagios2/htdocs
* [[ePSXe Emulatore Playstation]]
    # Enable this ScriptAlias if you want to enable the grouplist patch.
* [[Installare OpenOffice2 su Debian Etch]] (''old'')
    # See http://apan.sourceforge.net/download.html for more info
* [[Pacchettizzare ed installare Xorg su Debian Sid]] (''old'')
    # It allows you to see a clickable list of all hostgroups in the
    # left pane of the Nagios web interface
    # XXX This is not tested for nagios 2.x use at your own peril
    #ScriptAlias /nagios2/side.html /usr/lib/cgi-bin/nagios2/grouplist.cgi
    <DirectoryMatch (/usr/share/nagios2/htdocs|/usr/lib/cgi-bin/nagios2)>
Options FollowSymLinks
DirectoryIndex index.html
AllowOverride AuthConfig
Order Allow,Deny
Allow From All
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /etc/nagios2/htpasswd.users
require valid-user
    </DirectoryMatch>
</VirtualHost>
</pre>


===Altro===
Creiamo la Root Directory per questo sito con:
* [[Dual Boot Debian-Altra distribuzione Linux]]
<pre>
* [[Dual Boot Linux-Windows|Dual Boot Linux-Windows: usare il bootloader di windows]]
# mkdir  /var/www/nagios
* [[Logging su MySQL]]
# chown -R www-data:www-data /var/www/nagios/
* [[Password sicure: la base della sicurezza informatica]]
# touch /var/www/nagios/index.html
* [[Script Bash per Avvio e Visualizzazione dati Seti@home]] (''old'')
</pre>
la directory conterrà un file <tt>index.html</tt> vuoto, in questo file potremmo mettere o una pagina di benvenuto oppure un redirect alla directory contenente l'applicativo, a piacere.


===Tips and Tricks===
Ora manca solo una cosa da fare: aggiungere l'utente per l'accesso a nagios (operazione obbligatoria, pena un errore di tipo 500 quando si tenta di accedere all'applicazione).
====Bash====
* [[Bash tips]]: un elenco di trucchetti sull'uso interattivo e sullo scripting Bash
* [[Colorare bash]]
* [[Come abilitare il completamento automatico 'avanzato']]
* [[Un logout con schermo pulito]]
* [[Bash Script: Cambiare i permessi ricorsivamente]]
* [[Due simpatici login: welcome2l e linuxlogo]]


====Firefox====
Per aggiungere l'utente usiamo il comando <tt>htpasswd</tt>:
* [[Firefox: Disattivare la ricerca con il tasto centrale]]
<pre>
* [[Velocizzare Firefox per la banda larga]]
# htpasswd  -c  /etc/nagios2/htpasswd.users nagiosadmin
* [[Il vostro motore di ricerca da Firefox]]
</pre>
* [[Aggiungere un motore di ricerca al quicksearch di Firefox]]
alla richiesta di password, inseriamo una password a nostro piacimento.
* [[Spostare il tasto di chiusura delle tab di Firefox 2]]
* [[Firefox Tips and tricks]]


====Altro====
Ora possiamo testare la configurazione, ma prima è necessario riavviare apache per rendere effettive le modifiche che abbiamo effettuato:
* [[Convertire immagini .nrg in immagini .iso|Convertire immagini '''<tt>.nrg</tt>''' (Nero) in immagini '''<tt>.iso</tt>''' su Linux]]
<pre>
* [[Rileggere la tabella delle partizioni]]
# /etc/init.d/apache2 restart
* [[Scrivere su fs ntfs]]
</pre>
* [[Amministrare 'alternatives' graficamente - Galternatives]]
* [[Creare DVD Cover con GLabels]]


==Networking==
Collegandosi alla pagina <nowiki>http://nagios.knio.it/nagios2/</nowiki> ci verrà chiesto username/password per accedere a nagios, dopodichè ci verrà mostrata la schermata di default.
===Debian Server===
====Condivisione risorse====
* [[Directory shared tra macchine linux (nfs)]]
* [[Condivisione risorse con Samba]]
* [[Debian: guida rapida alla configurazione di Samba]]
* [[Samba e OpenLDAP: creare un controller di dominio]]
* [[sshfs | Montare una directory remota con sshfs]]
* [[Unison e la sincronizzazione di directory]]


====Mailing====
== Nagios ==
* [[Mail Server Sicuro con Postfix]]
=== Introduzione alla configurazione ===
* [[Postgrey:_filtrare_lo_spam_con_il_greylisting]]
La configurazione di nagios è situato, come da [[FHS]] in <tt>/etc/nagios2/</tt>. All'interno di questa directory sono presenti i seguenti file (e directory):
* [[Postfix_e_autenticazione_su_smtp_remoto]]
; cgi.cfg : il file contiene la configurazione dell'interfaccia web di nagios (quindi i percorsi dove trovare i file di configurazione ed alcuni comportamenti base; la configurazione dei permessi degli utenti e perfino i suoni da riprodurre in caso di problemi)
* [[Mail_Server]]
; commands.cfg : contiene la configurazione dei comandi eseguibili da nagios: check, notifiche ed altri
; conf.d : una directory che ha lo scopo di raccogliere i file di configurazione di tutti i vari host monitorati da nagios
; htpasswd.users : contiene (come abbiamo visto prima) le chiavi di accesso di tutti gli utenti che possono accedere all'interfaccia web di nagios (i permessi, per questi utenti, sono definiti in <tt>cgi.cfg</tt>)
; nagios.cfg : contiene la configurazione vera e propria del demone di nagios, la configurazione di default è corretta nella maggior parte dei casi
; resource.cfg : in questa guida non lo modificheremo
; stylesheets : directory per inserire i fogli di stile personalizzati (in questa guida non li useremo)


====Http====
=== Come gestire al meglio i file di configurazione ===
* [[Server Web Casalingo]]
Anche se la struttura dei file di configurazione è semplice, ci vuole molto poco a renderla una vera e propria accozzaglia di file. Ci sono varie scuole di pensiero su come gestire i file.
* [[LAMP: Linux, Apache, MySQL e PHP]]
* [[XAMPP: Linux, Apache, MySQL e PHP facili]]
* [[Debian MapServer/MapScript]]
* [[Configurare Ruby On Rails un su server web di produzione]]


===Amministrazione===
La prima è quella di inserire, all'interno della directory <tt>conf.d/</tt> un file per ogni host, raggruppando, poi, gli host tramite gli hostgroup. La tecnica è valida e funzionale, a meno che non ci si trovi a gestire un numero eccessivo di host.
====Gestione Remota/Locale====
* [[Wake On Lan | '''Wake On Lan''' per accendere i propri PC a distanza tramite la LAN]]
* [[Debian e il controllo di servizi e demoni]]
* [[Gestione della banda in Apache]]
* [[Ssh e autenticazione tramite chiavi]]
* [[Inetd e i servizi di rete]]


====Connettivita'====
La seconda tecnica, è quella di creare tante directory quante sono i segmenti della rete, così da racchiudere i file di configurazione in directory meno popolate, così da rendere più facilmente individuabile un file. Sfruttando questa seconda tecnica, però, è necessario modificare il file di configurazione <tt>nagios.conf</tt> aggiungendo, come directory contenente i file di configurazione, anche quelle rappresentanti le sottoreti.
* [[Condividere la connessione a internet]]
* [[Ifplugd: connessione automatica|'''<tt>ifplugd</tt>''': connessione automatica]]


===Sicurezza===
Personalmente trovo più comodo gestire la prima, con la seguente convenzione:
====Firewalling====
* ogni file ha la forma <tt>'''type'''-'''name'''.cfg</tt> dove '''type''' rappresenta la tipologia del file di configurazione (''host'' per un server, ''switch'' per uno switch di rete, ''router'' per un router, e così via...) e dove '''name''' è il nome univoco associato alla macchina (e usato anche all'interno di Nagios).
* [[Debian e iptables]]
* i file contenenti i gruppi, le definizioni dei periodi e simili hanno una struttura <tt>'''type'''.cfg</tt> dove ''type'' può essere:
* [[Firewall Builder]]
** '''contacts''': per le definizioni dei contatti
* [[Parametri a run-time per Netfilter]]
** '''timeperiods''': per le definizioni dei periodi
** '''extinfo''': per le definizioni delle informazioni aggiuntive
** '''hostgroups''': per la definizione dei gruppi di host
** '''services''': per la definizione dei gruppi di servizi


====Monitoraggio & Scanning====
=== Gli Host ===
* [[Monitoriamo il Sistema]]
=== I Servizi ===
* [[Mrtg: monitoriamo la banda]]
=== I Comandi ===
* [[Cacti | Cacti: monitor di rete, per pi� computer]]
==== Utilizzare quelli esistenti ====
* [[Munin]]
==== Creare nuovi comandi ====
=== I Gruppi ===
=== I Gruppi di Servizi ===
=== I Contatti ===
=== I Timeperiod ===
=== Le notifiche ===
==== Notifiche via e-mail ====
==== Notifiche via SMS (vodafone) ====
==== Notifiche via SMS (gateway) ====


====Proxy====
= Varie =
* [[Privoxy: navigazione sicura a prova di spam]]
== Nagios Checker ==
Nagios Checker ([https://addons.mozilla.org/it/firefox/addon/3607 Home Page]) è una comoda estensione per Firefox che permette di monitorare, direttamente dal browser, lo stato delle nostre macchine. In caso di problemi verrà mostrato un avviso (in rosso) e verrà riprodotto un suono di allarme. Tramite l'estensione sarà possibile, inoltre, accedere direttamente alla pagina dell'host (o del servizio) che danno problemi per approfondire. Un must!


====Tunneling====
= FAQ =
* [[Openvpn]]
== Come posso aggiungere un altro utente a Nagios? ==
* [[Openvpn: un'altra guida]]
Per aggiungere un nuovo utente è necessario effettuare due passi:


=== File Sharing ===
1) creazione dell'account all'interno del file <tt>/etc/nagios2/htpasswd.users</tt>
* [[Moblock - mobloquer]]
<pre>
* [[Emule-morph]]
# htpasswd /etc/nagios2/htpasswd.users nomeutente
</pre>


== Hardware ==
2) Inserire l'utente appena creato all'interno della configurazione di Nagios. Per fare questo bisogna modificare il file <tt>/etc/nagios2/cgi.cfg</tt> aggiungendo l'utente appena creato alle seguenti direttive (in base ai permessi che si vogliono dare al nuovo utente):
=== Fotocamere digitali e dispositivi di memorizzazione di massa removibili ===
<pre>
* [[Usare Fotocamere Digitali|Usare Fotocamere Digitali (libgphoto2)]]
authorized_for_system_information=nagiosadmin
* [[Usare Fotocamere Digitali (usb-storage)]]
authorized_for_configuration_information=nagiosadmin
* [[UsbMount: Gestione automatizzata delle periferiche usb di memorizzazione]]
authorized_for_system_commands=nagiosadmin
* [[Debian e iPod]]
authorized_for_all_services=nagiosadmin
* [[Debian e lettori mp3 Creative]]
authorized_for_all_hosts=nagiosadmin
#authorized_for_all_services=nagiosadmin,guest
#authorized_for_all_hosts=nagiosadmin,guest
authorized_for_all_service_commands=nagiosadmin
authorized_for_all_host_commands=nagiosadmin
</pre>


=== Modem e periferiche di rete ===
Dopo le varie modifiche è necessario ricaricare la configurazione di nagios con un
 
<pre>
* [[Debian e i Modem ADSL]]
# /etc/init.d/nagios2 reload
 
</pre>
==== Modem USB ADSL ====
* [[Installare i driver conexant accessrunner]]
* [[Installare i driver eagle-adsl]]
* [[Installare i driver eci-adsl]] ''(stub)''
* [[Installare i driver unicorn (BeWAN)]] ''(stub)''
* [[Modem adsl Telindus ND220]]
* [[Modem adsl Aethra Starmodem]]
* [[Modem adsl Fastrate 100 USB]]
 
==== Modem Ethernet ====
* [[Modem ethernet su Debian]]
 
==== Modem dial-up 56K ====
* ''Inserire qui eventuali guide su modem a 56K''
 
==== Schede di rete Wireless ====
* [[Wireless Support | Informazioni sul supporto alle periferiche Wireless]]
* [[Script Bash abilitazione scheda wireless]]
* [[Intel PRO/Wireless 2200BG]]
* [[Intel PRO/Wireless 3945ABG : Installazione dei moduli senza kernel patching]]
* [[Intel PRO/Wireless 3945ABG :Patchare il kernel con il driver per Linux]]
* [[NdisWrapper | NdisWrapper: Usiamo i driver di Windows per il WLan con GNU/Linux]]
* [[Madwifi | Installazione Driver Madwifi]]
* [[PCMCIA WiFi UPspeed su Debian Sarge on Thinkpad T20 ]]
* [[Wg111v2 con ndiswrapper e crittografia WPA]]
 
=== Schede Video ===
* [[Installazione Driver ATI per schede ATI RADEON MOBILITY 9700 SE]]
 
=== Stampanti ===
* [[Livello degli inchiostri e pulizia testine per stampanti Epson]]
==== Stampanti USB ====
* [[Installare stampanti con porta USB utilizzando CUPS]]
 
==== Stampanti con porta parallela ====
* [[Introduzione all'installazione di stampanti con porta parallela]]
 
==== Stampanti bluetooth ====
* [[Introduzione all'installazione di stampanti bluetooth]]
 
=== Scanner ===
* [[Epson Perfection 2480 photo - usb scanner]]
* ''Inserire qui eventuali altre guide su come far funzionare scanner con Debian''
 
=== Palmari e cellulari ===
* [[Debian e Nokia 7210: uso di gnokii e gestione degli sms]]
* [[UMTS/GPRS PCMCIA card (3g)]]
* [[UMTS/GPRS: Internet col cellulare]]
* [[Usare lcd4linux con un Palm]]
 
=== Altro hardware ===
* [[I2c e lm-sensors|'''I2c e lm-sensors''': usare i sensori della scheda madre]]
* [[Gestire gli HD: stato di salute, badblocks e ripristino dati|'''Gestire gli HD:''' stato di salute, badblocks e ripristino dati]]
 
* [[Tasti Multimediali: configurazione ed uso| '''Tasti Multimediali''': configurazione ed uso]]
* [[Associare un pulsante ad un' azione: Hotkeys|Associare un pulsante ad un' azione: '''Hotkeys''']]
 
==Portatili==
===Laptop Debianizzati===
Troverete di seguito i resoconti d'installazione di Debian su dei portatili:
 
* [[Debian on an HP nx8220 | Debian on an HP nx8220]]
* [[Debian on a presario 2141EU | Compaq Presario 2100 (2141EU)]]
* [[Debian on a compaq Presario 2154EA | Compaq Presario 2100 (2154EA)]]
* [[Debian on a Toshiba Satellite M30X-113| Toshiba Satellite M30x-113]]
* [[Debian on a HP Compaq NX6110| HP Compaq NX6110]]
* [[Debian su HP Compaq nx6325| HP Compaq nx6325]]
* [[Debian on an HP pavilion zv5422EA| HP pavilion zv5000 (zv5422EA)]]
 
===Altro===
* [[Powernowd: CpuScaling per AMD]]
* [[Cpufreqd: Cpuscaling per Intel Pentium M]]
* [[ACPI e DSDT]]
* [[Synaptics touchpad]]
* Inserire qui anche link a risorse in italiano sui portatili
 
==Debian Live==
* [[Debian Live Project]]
* [[Rimasterizzare una knoppix]]
* [[Damn Small Linux su chiavetta usb]]
 
==Crittografia==
* [[Crittografia e Steganografia - L'Arte di nascondere le informazioni]]
* [[Chiavi simmetriche e chiavi pubbliche]]
* [[Creare una partizione criptata nello standard LUKS]]
 
==Varie==
* [[Debian Fun]]

Versione delle 20:50, 8 mag 2008

Nagios (Home Page) è uno strumento molto usato ed utilissimo per il monitoraggio di server e servizi. All'inizio, per molti utenti, è un po' complicato da configurare, ma dopo aver capito il funzionamento risulterà semplice, potente e versatile, attributi necessari per questo genere di strumenti.

Installazione

La macchina su cui verrà installato Nagios è un Debian Stable (Etch). Installeremo la versione 2 di Nagios, con i relativi pacchetti per avere un maggior numero di plugin e immagini (vedremo dopo come usarle).

Per installare nagios è sufficiente un:

#  apt-get install nagios2 nagios2-common nagios-plugins nagios-images nagios-plugins-basic  nagios-plugins-standard 

Dopo aver scaricato (sono circa 3.5Mb) ed installato nagios provvediamo all'installazione di un web server (necessario per consultare la comoda web-interface); la mia scelta è ricaduta su apache2, anche perchè il server in questione ospiterà applicazioni scritte in php. Procediamo ad installare apache2 con:

# apt-get install apache2 libapache2-mod-php5


Configurazione

Apache

Al momento dell'installazione viene creato in modo automatico il file /etc/apache2/conf.d/nagios2.conf (il file è, a tutti gli effetti, un link simbolico al file /etc/nagios2/apache2.conf) con il seguente contenuto:

# apache configuration for nagios 2.x
# note to users of nagios 1.x:
#	throughout this file are commented out sections which preserve
#	backwards compatibility with bookmarks/config for nagios 1.x.  simply
#	look for lines following "nagios 1.x:" comments.

ScriptAlias /cgi-bin/nagios2 /usr/lib/cgi-bin/nagios2
ScriptAlias /nagios2/cgi-bin /usr/lib/cgi-bin/nagios2
# nagios 1.x:
#ScriptAlias /cgi-bin/nagios /usr/lib/cgi-bin/nagios2
#ScriptAlias /nagios/cgi-bin /usr/lib/cgi-bin/nagios2

# Where the HTML pages live
Alias /nagios2 /usr/share/nagios2/htdocs
# nagios 1.x:
#Alias /nagios /usr/share/nagios2/htdocs

<DirectoryMatch (/usr/share/nagios2/htdocs|/usr/lib/cgi-bin/nagios2)>
	Options FollowSymLinks

	DirectoryIndex index.html

	AllowOverride AuthConfig
	Order Allow,Deny
	Allow From All

	AuthName "Nagios Access"
	AuthType Basic
	AuthUserFile /etc/nagios2/htpasswd.users
	# nagios 1.x:
	#AuthUserFile /etc/nagios/htpasswd.users
	require valid-user
</DirectoryMatch>

# Where the stylesheets (config files) reside
#Alias /nagios2/stylesheets /etc/nagios2/stylesheets
# nagios 1.x:
#Alias /nagios/stylesheets /etc/nagios2/stylesheets

# Enable this ScriptAlias if you want to enable the grouplist patch.
# See http://apan.sourceforge.net/download.html for more info
# It allows you to see a clickable list of all hostgroups in the
# left pane of the Nagios web interface
# XXX This is not tested for nagios 2.x use at your own peril
#ScriptAlias /nagios2/side.html /usr/lib/cgi-bin/nagios2/grouplist.cgi
# nagios 1.x:
#ScriptAlias /nagios/side.html /usr/lib/cgi-bin/nagios2/grouplist.cgi

Il file contiene una bozza di configurazione per nagios che permette di raggiungere il servizio digitando, semplicemente http://IP/nagios2/. Questo sistema a me, personalmente, non piace, in quanto nagios sarebbe accessibile da qualsiasi sito ospitato sulla macchina, semplicemente digitando http://www.sito.it/nagios2/, non molto sicuro e pulito.

Creeremo, quindi, un sottodominio dedicato a nagios, modificando il file nel seguente modo:


<VirtualHost *:80>
    ServerAdmin root@knio.it
#    DocumentRoot /var/www/nagios/
    ServerName nagios.knio.it

    ErrorLog /var/log/apache2/nagios.knio.it_error.log
    CustomLog /var/log/apache2/nagios.knio.it_access.log combined

     <Directory />
         AllowOverride All
         Options +Multiviews
         Options Indexes Includes FollowSymLinks MultiViews
         DirectoryIndex index index.html
     </Directory>

    ScriptAlias /cgi-bin/nagios2 /usr/lib/cgi-bin/nagios2
    ScriptAlias /nagios2/cgi-bin /usr/lib/cgi-bin/nagios2

    
    #Alias /nagios2/stylesheets /etc/nagios2/stylesheets
    Alias /nagios2 /usr/share/nagios2/htdocs
    # Enable this ScriptAlias if you want to enable the grouplist patch.
    # See http://apan.sourceforge.net/download.html for more info
    # It allows you to see a clickable list of all hostgroups in the
    # left pane of the Nagios web interface
    # XXX This is not tested for nagios 2.x use at your own peril
    #ScriptAlias /nagios2/side.html /usr/lib/cgi-bin/nagios2/grouplist.cgi
    <DirectoryMatch (/usr/share/nagios2/htdocs|/usr/lib/cgi-bin/nagios2)>
	Options FollowSymLinks
	DirectoryIndex index.html
	AllowOverride AuthConfig
	Order Allow,Deny
	Allow From All
	AuthName "Nagios Access"
	AuthType Basic
	AuthUserFile /etc/nagios2/htpasswd.users
	require valid-user
    </DirectoryMatch>
</VirtualHost>

Creiamo la Root Directory per questo sito con:

# mkdir  /var/www/nagios
# chown -R www-data:www-data /var/www/nagios/
# touch /var/www/nagios/index.html

la directory conterrà un file index.html vuoto, in questo file potremmo mettere o una pagina di benvenuto oppure un redirect alla directory contenente l'applicativo, a piacere.

Ora manca solo una cosa da fare: aggiungere l'utente per l'accesso a nagios (operazione obbligatoria, pena un errore di tipo 500 quando si tenta di accedere all'applicazione).

Per aggiungere l'utente usiamo il comando htpasswd:

# htpasswd  -c  /etc/nagios2/htpasswd.users nagiosadmin

alla richiesta di password, inseriamo una password a nostro piacimento.

Ora possiamo testare la configurazione, ma prima è necessario riavviare apache per rendere effettive le modifiche che abbiamo effettuato:

# /etc/init.d/apache2 restart

Collegandosi alla pagina http://nagios.knio.it/nagios2/ ci verrà chiesto username/password per accedere a nagios, dopodichè ci verrà mostrata la schermata di default.

Nagios

Introduzione alla configurazione

La configurazione di nagios è situato, come da FHS in /etc/nagios2/. All'interno di questa directory sono presenti i seguenti file (e directory):

cgi.cfg
il file contiene la configurazione dell'interfaccia web di nagios (quindi i percorsi dove trovare i file di configurazione ed alcuni comportamenti base; la configurazione dei permessi degli utenti e perfino i suoni da riprodurre in caso di problemi)
commands.cfg
contiene la configurazione dei comandi eseguibili da nagios: check, notifiche ed altri
conf.d
una directory che ha lo scopo di raccogliere i file di configurazione di tutti i vari host monitorati da nagios
htpasswd.users
contiene (come abbiamo visto prima) le chiavi di accesso di tutti gli utenti che possono accedere all'interfaccia web di nagios (i permessi, per questi utenti, sono definiti in cgi.cfg)
nagios.cfg
contiene la configurazione vera e propria del demone di nagios, la configurazione di default è corretta nella maggior parte dei casi
resource.cfg
in questa guida non lo modificheremo
stylesheets
directory per inserire i fogli di stile personalizzati (in questa guida non li useremo)

Come gestire al meglio i file di configurazione

Anche se la struttura dei file di configurazione è semplice, ci vuole molto poco a renderla una vera e propria accozzaglia di file. Ci sono varie scuole di pensiero su come gestire i file.

La prima è quella di inserire, all'interno della directory conf.d/ un file per ogni host, raggruppando, poi, gli host tramite gli hostgroup. La tecnica è valida e funzionale, a meno che non ci si trovi a gestire un numero eccessivo di host.

La seconda tecnica, è quella di creare tante directory quante sono i segmenti della rete, così da racchiudere i file di configurazione in directory meno popolate, così da rendere più facilmente individuabile un file. Sfruttando questa seconda tecnica, però, è necessario modificare il file di configurazione nagios.conf aggiungendo, come directory contenente i file di configurazione, anche quelle rappresentanti le sottoreti.

Personalmente trovo più comodo gestire la prima, con la seguente convenzione:

  • ogni file ha la forma type-name.cfg dove type rappresenta la tipologia del file di configurazione (host per un server, switch per uno switch di rete, router per un router, e così via...) e dove name è il nome univoco associato alla macchina (e usato anche all'interno di Nagios).
  • i file contenenti i gruppi, le definizioni dei periodi e simili hanno una struttura type.cfg dove type può essere:
    • contacts: per le definizioni dei contatti
    • timeperiods: per le definizioni dei periodi
    • extinfo: per le definizioni delle informazioni aggiuntive
    • hostgroups: per la definizione dei gruppi di host
    • services: per la definizione dei gruppi di servizi

Gli Host

I Servizi

I Comandi

Utilizzare quelli esistenti

Creare nuovi comandi

I Gruppi

I Gruppi di Servizi

I Contatti

I Timeperiod

Le notifiche

Notifiche via e-mail

Notifiche via SMS (vodafone)

Notifiche via SMS (gateway)

Varie

Nagios Checker

Nagios Checker (Home Page) è una comoda estensione per Firefox che permette di monitorare, direttamente dal browser, lo stato delle nostre macchine. In caso di problemi verrà mostrato un avviso (in rosso) e verrà riprodotto un suono di allarme. Tramite l'estensione sarà possibile, inoltre, accedere direttamente alla pagina dell'host (o del servizio) che danno problemi per approfondire. Un must!

FAQ

Come posso aggiungere un altro utente a Nagios?

Per aggiungere un nuovo utente è necessario effettuare due passi:

1) creazione dell'account all'interno del file /etc/nagios2/htpasswd.users

# htpasswd /etc/nagios2/htpasswd.users nomeutente

2) Inserire l'utente appena creato all'interno della configurazione di Nagios. Per fare questo bisogna modificare il file /etc/nagios2/cgi.cfg aggiungendo l'utente appena creato alle seguenti direttive (in base ai permessi che si vogliono dare al nuovo utente):

authorized_for_system_information=nagiosadmin
authorized_for_configuration_information=nagiosadmin
authorized_for_system_commands=nagiosadmin
authorized_for_all_services=nagiosadmin
authorized_for_all_hosts=nagiosadmin
#authorized_for_all_services=nagiosadmin,guest
#authorized_for_all_hosts=nagiosadmin,guest
authorized_for_all_service_commands=nagiosadmin
authorized_for_all_host_commands=nagiosadmin

Dopo le varie modifiche è necessario ricaricare la configurazione di nagios con un

# /etc/init.d/nagios2 reload