21/03/2011
Monitorare rsyslogd mediante Nagios
Ho già trattato diversi argomenti in cui veniva discussa la corretta configurazione di un logserver basato su sitemi *nix. Ora vedremo come monitorare mediante nagios3 il demone che si occupa della raccolta dei log.
Nella fattispecie, il demone in questione è rsyslogd, evoluzione del più datato syslogd. Esso consente di salvare le informazioni inviate dai vari dispositivi di rete su di un apposito file creato all'occorrenza, in modo da tenere traccia degli eventi più rilevanti.
Ora, tale demone (per default) rimane in ascolto sulla porta 514 ed utilizza per il protocollo UDP per il trasporto. Ciò significa che non è previsto alcun meccanismo di SYN SYN/ACK ACK come invece avviene per il protocollo TCP (molto più affidabile ma allo stesso tempo molto più oneroso in termini di banda).
Detto ciò, vediamo come monitorare lo stato di tale servizio sfruttando nagios3. Per prima cosa scarichiamo questo PERL script.
Successivamente salviamo il file appena scaricato nella directory /usr/lib/nagios/plugins e rinominiamolo in check_syslog:
nightfly@nightbox:/usr/lib/nagios/plugins$ sudo mv check_syslog_02.pl check_syslog
A questo punto rendiamo lo script eseguibile digitando:
nightfly@nightbox:/usr/lib/nagios/plugins$ sudo chmod +x check_syslog
Definiamo il comando attraverso il quale verificheremo il corretto funzionamento di rsyslogd. Per fare ciò occorre creare il file syslogd.cfg il cui contenuto dovrà essere:
# 'check_syslog' command definition
define command{
command_name check_syslog
command_line /usr/lib/nagios/plugins/check_syslog -l '$HOSTADDRESS$' -f '$ARG1$'
}
Posizioniamoci ora nella directory /etc/nagios3/conf.d ed editiamo il file di configurazione relativo al logserver aggiungendo il seguente servizio:
define service{
use generic-service ; Name of service template to use
host_name localhost
service_description Rsyslog
check_command check_syslog!/var/log/syslog
}
A questo punto occorre operare sui permessi di lettura/scrittura associati al file syslog. Per prima cosa posizioniamoci nella directory /var/log e lanciamo un ls -ila | grep syslog:
2097425 -rw-r----- 1 syslog adm 171910 2011-03-21 11:54 syslog
Come possiamo notare il gruppo che ha la possibilita di accedere al file in lettura è adm. Aggiungiamo l'utente nagios al gruppo adm editando il file group presente nella dir /etc:
adm:x:4:nagios
Riavviamo nagios3:
nightfly@nightbox:/etc$ sudo service nagios3 restart
ed abbiamo finito.
A presto.
16:39 Scritto da: nazarenolatella in Networking | Link permanente | Commenti (0) | Segnala | Tag: nagios3, linux, rsyslog, rsyslogd, monitoring, logserver | OKNOtizie |
Facebook
09/03/2011
SOHO 77 e logging su una linux box
In questo post abbiamo visto come salvare i log di un Cisco PIX 501 su di un apposito server linux. Oggi invece descriverò la procedura per impostare correttamente il logging su di un router Cisco SOHO 77, affinchè le informazioni da esso generate vengano inviate ad una linux box che funge da logserver.
Per prima cosa entriamo in modalità enable e lanciamo un conf t:
soho77# conf t
soho77(config)#
Adesso digitiamo i seguenti comandi:
soho77(config)# logging <indirizzo IP del logserver>
soho77(config)# log facility local2
Nel caso in cui si voglia impostare un certo livello di severity (ad esempio warning), deve essere usato il comando:
soho77(config)# logging trap 4
Infine, lanciamo un copy run start per rendere effettive le modifiche apportate alla configurazione del nostro router:
soho77(config)# copy run start
Linux box
Sulla nostra linux box (ovvero il logserver) occorre fare in modo che il demone rsyslogd intercetti a dovere gli eventi inviati dal router.
Per prima cosa apriamo in scrittura il file 50-default.conf presente nella directory /etc/rsyslog.d ed inseriamo la seguente stringa subito dopo user.* :
local2.4 /var/log/soho77.log
Creiamo il file che dovrà contenere i log del SOHO77:
nightfly@nightbox:/etc/rsyslog.d$ sudo touch soho77.log
Riavviamo quindi il demone rsyslogd:
nightfly@nightbox:/etc/rsyslog.d$ sudo service rsyslog restart
A questo punto non ci resta che definire appositamente la logrotation, in modo da tenere traccia dei log inviati dal router per un giusto lasso di tempo, magari sottoforma di tarball.
Per fare ciò posizioniamoci nella directory /etc/logrotate.d/ e creiamo il file soho77, il cui contenuto dovrà essere:
/var/log/soho77.log {
rotate 7
weekly
compress
missingok
notifempty
}
In particolare, il numero massimo di log che verranno conservati (comprese le tarball) è pari a 7 (rotate 7), ciascun log verrà compresso (compress) ed archiviato settimanalmente (weekly). Inoltre, nel caso in cui il file di log sia mancante non verrà generato alcun messaggio di errore (missingok) e la rotation non verrà attuata quando il file di log risulta vuoto (notifempty).
Fine del post, alla prossima.
10:00 Scritto da: nazarenolatella in Networking | Link permanente | Commenti (0) | Segnala | Tag: router, cisco, soho77, rsyslogd, syslogd, syslog, logrotate | OKNOtizie |
Facebook
















