Syslogd remoto

Syslogd è un utility (demone) di logging, che riversa l'output in vari files nella directory /var/log. Normalmente viene eseguito in locale, ma Syslogd può essere configurato per ottenere log da un client remoto o per inviarli ad un server syslog remoto .

Image Hosted by ImageShack.us
Qualche esempio:
  • Rete, sotto probabile attacco dos, con router o switch che esauriscono la cache per i log interni e si impallano. ;)
  • Macchine con filesystem in read-only
  • Sistemi di log replications

Assicuriamoci che non ci siano regole di iptables di mezzo, e facciamo una prova con due host. Nel mio caso:
PC1
= Ubuntu Hardy (server)
PC2
= Zenwalk

Configurazione server

Impostiamo il server syslog (Ubuntu) per metterlo in ascolto di messaggi remoti

sudo nano /etc/default/syslogd

Dovremmo trovare la stringa senza opzioni:

SYSLOGD=""

Modifichiamola in:

SYSLOGD="-r"

NB: in alternativa possiamo aggiungere la stessa opzione allo script in /etc/init.d/sysklogd (anche se sconsigliato) Lanciamo il servizio:

sudo /etc/init.d/sysklogd restart

NB: La porta normalmente utilizzata da syslogd è la 514 UDP. Nel file /etc/services sono presenti tutte le porte e i relativi servizi. Se non c'è aggiungiamola .

netstat -an | grep 514

il demone è ora in listening.
Verifichiamo che sia effettivamente cosi', altrimenti potrebbe voler dire che c'è ancora un filtro di mezzo .


Configurazione client (Zenwalk)

Una volta impostato il syslog-server, dobbiamo stabilire quali tipi di messaggi inviare. Apriamo il file:

su -c "nano /etc/syslog.conf"

Come possiamo vedere, dai log locali sono disabilitati:
mail.none
: Nessun log per le e-mail
authpriv.none
: Nessun log autorizzazioni private
cron.none
: Nessun log di cron

Altri sono invece abilitati per inviare dei warnings:

  • info: Informazioni generiche

Aggiungiamo il nome dell'host remoto (preceduto da @) oppure il suo dominio / indirizzo IP (es. 192.168.0.5):

# Log server-syslog *.info;mail.none;authpriv.none;cron.none @192.168.0.5

Riavviamo il syslog anche su questa macchina:

cd /etc/rc.d 
su -c "./rc.syslog restart"

Sul client avviamo un programma a caso (tcpdump) e, successivamente, controlleremo sul server l'output di /var/log/messages:

  • PC2
tcpdump -i eth0
  • PC1
sudo tail -f /var/log/messages

klogd 1.4.1, log source = /proc/kmsg started: Riavvio syslogd . device eth0 entered promiscuous mode: Modalità promiscua provvisoria .

Jul 25 23:39:37 192.168.0.2 exiting on signal 15 
Jul 25 23:39:42 192.168.0.2 syslogd 1.4.1: restart. 
Jul 25 23:39:47 192.168.0.2 kernel: klogd 1.4.1, log source = /proc/kmsg started. 
Jul 25 23:40:07 192.168.0.2 kernel: device eth0 entered promiscuous mode 
Jul 25 23:40:16 192.168.0.2 kernel: device eth0 left promiscuous mode


Ulteriori risorse
:


Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
1 + 8 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.