Pagina 1 di 1

[Risolto] configurare syslog per accettare i log del NAS

Inviato: mer 21 mag 2014, 1:16
da F4B1CK
Ciao a tutti. Ho da poco acquistato un piccolo NAS domestico, un D-Link 320L che, tra le varie opzioni, mi permette di inserire l'IP del server che acquisisce il syslog. In poche parole vorrei sapere come configurare la mia Slackware (una current a 32 bit aggiornata agli ultimi pacchetti) per far sì che dando l'IP fisico della macchina al NAS mi acquisisca i suoi log e magari me li metta in un file dedicato, del tipo /var/log/nas.
Grazie a chiunque mi sappia rispondere o mi dia un minimo di indicazioni :D

Re: configurare syslog per accettare i log del NAS

Inviato: mer 21 mag 2014, 10:07
da murdock
Non conosco l'apparecchio ma solitamente è necessario implementare un server FTP sulla macchina che deve ricevere il log.

Saluti,
MuRdOcK

Re: configurare syslog per accettare i log del NAS

Inviato: mer 21 mag 2014, 10:57
da ponce
di suo il syslog che e' presente in Slackware non da la possibilita' di dividere i log su file dedicati a seconda degli host, ma di recente mancha ha scritto delle patch per implementare tale funzionalita': e' tutto descritto in un topic su linuxquestions

https://www.linuxquestions.org/question ... 175470329/

Re: configurare syslog per accettare i log del NAS

Inviato: mer 21 mag 2014, 14:45
da F4B1CK
Avevo letto il tread su linuxquestions.org ma ci sono due problemi: il primo è che la patch di mancha non è più disponibile (non so perché ma è stata rimossa) la seconda è che non mi piace lavorare con un servizio patchato da chi non lo mantiene nei repository ufficiali. Inoltre al primo aggiornamento andrebbe tutto in malora e dovrei rifare tutto dal principio...ho visto che alcuni consigliano di utilizzare syslog-ng che pare avere più funzionalità però io non ho esperienza a riguardo, perciò chiedevo un aiuto anche sull'eventuale configurazione del servizio.

Re: configurare syslog per accettare i log del NAS

Inviato: gio 22 mag 2014, 17:41
da diego
Ciao,
ho una Slackware 14.0 e per ricevere i log ho modificato il file /etc/rc.d/rc.syslog
aggiungendo un -r alla riga /usr/sbin/syslogd

Codice: Seleziona tutto

syslogd_start() {
  if [ -x /usr/sbin/syslogd -a -x /usr/sbin/klogd ]; then
    echo -n "Starting sysklogd daemons:  "
    echo -n "/usr/sbin/syslogd "
    /usr/sbin/syslogd -r
e cosi' dovresti essere gia in grado di ricevere i log della nas.

Se poi riesci a forzare la facility sui log della nas, per esempio a local0
aggiungendo al file /etc/syslog.conf la riga

Codice: Seleziona tutto

local0.*                                                -/var/log/nas.log
dovrebbe andare (previo riavvio syslog), ma prendi un po' con le molle perche' non riesco a testarlo ora.
Altrimenti dovresti provare a sostituire il syslog con un rsyslog per esempio.

Ciao

Re: configurare syslog per accettare i log del NAS

Inviato: ven 23 mag 2014, 10:21
da F4B1CK
Ciao diego, ho seguito le tue indicazioni aggiungendo il parametro -r all'interno del file rc.syslog, poi ho modificato il file syslog.conf aggiungendo le voci :

+HomeNAS
*.* /var/log/HomeNAS

dove HomeNAS è identificato tramite voce all'interno del file hosts, di modo da pingarlo correttamente.
Fatto ciò il file HomeNAS in /var/log per il momento resta vuoto. Ho provato a fare qualche operazione sul NAS (come scrivere dei file e loggarmi da admin) ma non genera alcun risultato.

A proposito, ho letto qualcosa sul man a riguardo di local0, però non ho capito come dovrebbe essere attivato, dato che sul NAS a parte indicare l'IP del server dei log non posso fare altro.

Re: configurare syslog per accettare i log del NAS

Inviato: ven 23 mag 2014, 14:56
da diego
Ciao F4B1CK

Se ora da root sulla Slackware dai il comando

Codice: Seleziona tutto

netstat -au
dovresti vedere come output una riga come questa

Codice: Seleziona tutto

udp        0      0 *:syslog                *:*   
che significa che il tuo syslog e' in ascolto e quindi dovresti avere in (di solito)
/var/log/syslog o in /var/log/messages i log della nas (dipende della severity).

Per vedere i log che arrivano potresti dare questo comando da console

Codice: Seleziona tutto

tcpdump -i eth0 -n "host IpDellaNas port 514"
Quando la tua Nas spedisce log li vedi arrivare sul tcpdump, tipo

Codice: Seleziona tutto

hh:mm:ss.xxxxx IP IpDellaNas.514 > IpSlackware.514: SYSLOG facility.severity, length: xyz
e poi in un file in /var/log.

local0 (fino a local7) sono i "facility code" come pure lo sono
auth, authpriv, daemon, cron, ftp, lpr, kern, mail, news, syslog, user, uucp
che pero' sono gia configurati localmente.
Se nella Nas puoi impostare una facility allora puoi configurare sulla Slackware
di redirigere questi log su un file separato.

Prova a vedere la prima parte, e cioe' se i log partono dalla Nas e arrivano sulla
Slackware (su un qualche file), poi capire se si puo' o meno (a costo 0) redirigerli
su un file separato.

Ciao

Re: configurare syslog per accettare i log del NAS

Inviato: sab 24 mag 2014, 12:24
da F4B1CK
Ciao diego, ho seguito le tue istruzioni (anche se il filtro su tcpdump non mi funzionava dicendomi che la sintassi era errata ed ho operato direttamente con wireshark, ma penso sia la stessa cosa).
Il protocollo di syslog funziona, nel senso che i pacchetti dal NAS vengono spediti al PC, però non ho capito se li droppa oppure se li scrive in un file perché il file HomeNAS rimane sempre a zero byte, nel file syslog non c'è traccia di ciò che il NAS spedisce e non so come fare per vedere se li và a scrivere su altri file visto che scorrendo la directory /var/log con il comando ll -at gli ultimi file scritti non contengono nulla spedito dal NAS, a parte il file "cron" che contiene tante righe del tipo :

May 24 12:20:17 homenas crond[1764]: USER root pid 4283 cmd /usr/sbin/rlog /var/log/user.log 800

ma verificando, il file user.log non esiste.

Hai altri suggerimenti da darmi?

Re: configurare syslog per accettare i log del NAS

Inviato: lun 26 mag 2014, 9:47
da diego
Ciao F4B1CK
si wireshark fa le stesse cose di tcpdump e qualcosa in piu'.
Da wireshark riesci a capire con che facility e severity vengono spediti?
Verifica che vengano spediti sulla porta udp corretta.
Controlla di non avrere delle regole di iptables che le bloccano

Codice: Seleziona tutto

iptables -L -n
Verifica che il syslog sia in ascolto
e prova a postare il tuo syslog.conf

Ciao

Re: configurare syslog per accettare i log del NAS

Inviato: lun 26 mag 2014, 13:52
da F4B1CK
diego ha scritto:Ciao F4B1CK
si wireshark fa le stesse cose di tcpdump e qualcosa in piu'.
Da wireshark riesci a capire con che facility e severity vengono spediti?
Verifica che vengano spediti sulla porta udp corretta.
Controlla di non avrere delle regole di iptables che le bloccano

Codice: Seleziona tutto

iptables -L -n
Verifica che il syslog sia in ascolto
e prova a postare il tuo syslog.conf

Ciao
Su iptables non ho nessuna regola impostata, mentre il mio file syslog.conf è il seguente :

Codice: Seleziona tutto

# /etc/syslog.conf
# For info about the format of this file, see "man syslog.conf"
# and /usr/doc/sysklogd/README.linux.  Note the '-' prefixing some
# of these entries;  this omits syncing the file after every logging.                                                                                
# In the event of a crash, some log information might be lost, so                                                                                    
# if this is a concern to you then you might want to remove the '-'.                                                                                 
# Be advised this will cause a performation loss if you're using                                                                                     
# programs that do heavy logging.                                                                                                                    

# Uncomment this to see kernel messages on the console.                                                                                              
#kern.*                                                 /dev/console                                                                                 

# Log anything 'info' or higher, but lower than 'warn'.                                                                                              
# Exclude authpriv, cron, mail, and news.  These are logged elsewhere.                                                                               
*.info;*.!warn;\                                                                                                                                     


# Log anything 'warn' or higher.                                                                                                                     
# Exclude authpriv, cron, mail, and news.  These are logged elsewhere.                                                                               
*.warn;\                                                                                                                                             


# Debugging information is logged here.                                                                                                              
*.=debug                                                -/var/log/debug                                                                              

# Private authentication message logging:                                                                                                            
authpriv.*                                              -/var/log/secure                                                                             

# Cron related logs:
cron.*                                                  -/var/log/cron

# Mail related logs:
mail.*                                                  -/var/log/maillog

# Emergency level messages go to all users:
*.emerg                                                 *

# This log is for news and uucp errors:
uucp,news.crit                                          -/var/log/spooler

# Uncomment these if you'd like INN to keep logs on everything.
# You won't need this if you don't run INN (the InterNetNews daemon).
#news.=crit                                     -/var/log/news/news.crit
#news.=err                                      -/var/log/news/news.err
#news.notice                                    -/var/log/news/news.notice

#entries for external log
+HomeNAS
*.*     /var/log/HomeNAS
dove all'ultima riga ho aggiunto la voce relativa al NAS. Nel file hosts ho messo l'opportuno IP relativo alla voce HomeNAS di modo che la risolva in automatico.

Come verifico se syslog è in ascolto rispetto a quell'indirizzo IP ?

Re: configurare syslog per accettare i log del NAS

Inviato: lun 26 mag 2014, 16:35
da diego
F4B1CK ha scritto:Come verifico se syslog è in ascolto rispetto a quell'indirizzo IP ?
Un paio di post fa il comando

Codice: Seleziona tutto

netstat -au
Comunque il bello e' che col tuo syslog.conf a me funziona,
ho solo cambiato l'ip nel file host, ma comunque funziona.
Quindi la strada intrapresa e' corretta.

Re: configurare syslog per accettare i log del NAS

Inviato: lun 26 mag 2014, 19:08
da F4B1CK
Mah...ho cancellato il file che avevo creato per il log, l'ho ricreato e riavviato il servizio e adesso pare funzionare.
Grazie per la pazienza! :thumbright: