[RISOLTO] Problema con i log

Firewall, Server, Monitoring e tutto quello che riguarda la sicurezza della nostra Linux Box

[RISOLTO] Problema con i log

Messaggioda MrHide » 12/02/2017, 20:51

Vorrei che i log, messages e syslog, venissero registrati su un'altra directory differente rispetto a /var/log, come si può fare (possibilmente in più file distinti con data e ora di inizio log)?
Volevo anche registrare i log di iptables su altra directory e file differente, ho caricaro ULOGD ma, dopo numerosi tentativi, non sono riuscito a risolvere il problema. La riga:
-A OUTPUT -j LOG --log-prefix "Droppato(out-sec): " --log-level 7
funziona correttamente, registrando su syslog, mentre:
-A OUTPUT -j ULOG --ulog-prefix Droppato(U-out-sec):
non registra nulla, da nessuna parte, pur avendo modificato il file di ulogd.cfg, help me (entrambe le righe sono mach'ate'):

ulogd.cfg:
http://dropcanvas.com/3wmv3

Help me|
Ultima modifica di MrHide il 18/02/2017, 9:22, modificato 2 volte in totale.
MrHide
Newbie
Newbie
 
Messaggi: 35
Iscritto il: 12/09/2015, 13:33

Re: Problema con i log

Messaggioda byte64 » 13/02/2017, 8:40

Non ti serve ulogd, dai un occhiata al file /etc/rsyslog.conf, è piuttosto autoesplicativo.
Inoltre puoi personalizzare ulteriormente creando conf specifici per le applicazioni, ad esempio io per i log di iptables ho creato un file iptables.conf sotto /etc/rsyslog.d.
In particolare ho inserito questa semplice riga.
kern.warning /var/log/iptables.log
Puoi specificare una qualsiasi directory e file di tua preferenza dove raccogliere i log.

Ciao
byte64
Full Member
Full Member
 
Messaggi: 124
Iscritto il: 07/01/2017, 19:02
Località: Bergamo

Re: Problema con i log

Messaggioda MrHide » 13/02/2017, 18:11

Ho effettuato la modifica e funziona! ;) Però ho notato che i messaggi del firewall vengono scritti anche su messages, e syslog, oltre che su iptables.log. Come faccio, per risparmiare spazio e tempo di cpu, a far registrare i dati solo su iptables.conf? Altro problema è che se salvo il log in /var/log o /var funziona, se invece provo a metterlo in /media/miopc/part1 o /media/miopc/part1/directorymia non lo salva. Ho fatto numerose prove senza venirne a capo.
Help me!
MrHide
Newbie
Newbie
 
Messaggi: 35
Iscritto il: 12/09/2015, 13:33

Re: Problema con i log

Messaggioda byte64 » 14/02/2017, 14:36

Modifica la riga in ipables.conf o che hai inserito in rsyslog.conf in questo modo:

Codice: Seleziona tutto
:msg,contains,"Droppato(out-sec): " /var/log/iptables.log
& ~

Inseriscila come prima regola di tutte le altre se dentro a rsyslog.conf

Verifica i permessi nelle cartele e files di destinazione.
byte64
Full Member
Full Member
 
Messaggi: 124
Iscritto il: 07/01/2017, 19:02
Località: Bergamo

Re: Problema con i log

Messaggioda MrHide » 15/02/2017, 8:12

Funziona! Grazie 1000!
Volendo personalizzare ulteriormente lo script vorrei sapere quando viene letto il file di configurazione per sostuirlo dinamicamente all'avvio, prima che venga applicato. In pratica mi serve se la partizione del disco (esterno) non sia disponibile per indicare un'altra directory.
MrHide
Newbie
Newbie
 
Messaggi: 35
Iscritto il: 12/09/2015, 13:33

Re: Problema con i log

Messaggioda byte64 » 15/02/2017, 8:40

Potresti fare uno script che controlla il mount della destinazione e in caso di negativo modifica/sostituisce il file iptables.conf, se hai usato quello, o il file rsyslog.conf.
ad esempio:
Codice: Seleziona tutto
#!/bin/bash
if ! mountpoint /tuadestinazione
  then sed -i "s/\/tuadestinazione\/iptables.log/\var\/log\/iptables.log/g" /etc/rsyslog.d/iptables.conf
fi

attento agli slash, metti sempre uno \ davanti a / prima del nome directory o file

io inserirei le 3 righe in /etc/rc.local

EDIT: forse ancora meglio se metti uno script in /etc/network/if-pre-up.d/
byte64
Full Member
Full Member
 
Messaggi: 124
Iscritto il: 07/01/2017, 19:02
Località: Bergamo

Re: Problema con i log

Messaggioda MrHide » 15/02/2017, 12:26

Scusa ma non sono riuscito. Il problema è che non ho capito bene come funziona lo script.
In pratica il file iptables.conf alternativo dove lo devo copiare, in modo da renderlo disponibile come alternativo?
In pratica iptables1.conf e iptables2.conf dove li salvo?
Mi sembra che se c'è un solo file di cfg, una volta applicato, nel caso in cui rimuovo e poi rimetto il disco, la memorizzazione non ritorna sul disco esterno. Sono un po in confusione... ;)
MrHide
Newbie
Newbie
 
Messaggi: 35
Iscritto il: 12/09/2015, 13:33

Re: Problema con i log

Messaggioda byte64 » 15/02/2017, 13:21

Ops....ho dimenticato di considerare l'eventualità che una volta modificato il percorso del file di log ci sia anche la possibilità di rimettere il percorso originale.
Direi di aggiungere un secondo controllo:

Codice: Seleziona tutto
#!/bin/bash
if ! mountpoint /tuadestinazione
  then sed -i "s/\/tuadestinazione\/iptables.log/\var\/log\/iptables.log/g" /etc/rsyslog.d/iptables.conf
fi
if mountpoint /tuadestinazione
   then sed -i "s/\/var\/log\/iptables.log/\/tuadestinazione\/iptables.log/g" /etc/rsyslog.d/iptables.conf
fi

Il secondo controllo rimetterà il percorso originale solo nel caso che sia stato precedentemente modificato, altrimente lo lascia come è.
Non devi creare un secondo file conf, verrà modificato dal comando sed a seconda della risposta di mountpoint.

Probabilmente c'è anche qualche altro modo più elegante di ottenere la stessa cosa.....così comunque funziona.
byte64
Full Member
Full Member
 
Messaggi: 124
Iscritto il: 07/01/2017, 19:02
Località: Bergamo

Re: Problema con i log

Messaggioda MrHide » 15/02/2017, 15:54

Ho fatto alcune prove e funziona! :) Solo che nel ritornare a "/var/log/iptables.log" la stringa viene memorizzata in modo errato... dove sbaglio?

":msg,contains,"Droppato(out-sec): " ar/log/iptables.log"

Riga in allegato visto che nell'editor non viene visualizzata con il carattere spurio.

Ciao!

Codice: Seleziona tutto
#!/bin/bash
if ! mountpoint /tuadestinazione
then
      sed -i "s/\/tuadestinazione\/iptables.log/\var\/log\/iptables.log/g" /etc/rsyslog.d/iptables.conf
else
        sed -i "s/\/var\/log\/iptables.log/\/tuadestinazione\/iptables.log/g" /etc/rsyslog.d/iptables.conf
fi
Allegati
Documento_1_non_salvato.pdf
Riga in allegato.
(14.52 KiB) Scaricato 3 volte
MrHide
Newbie
Newbie
 
Messaggi: 35
Iscritto il: 12/09/2015, 13:33

Re: Problema con i log

Messaggioda byte64 » 15/02/2017, 16:10

MrHide ha scritto:Ho fatto alcune prove e funziona! :) Solo che nel ritornare a "/var/log/iptables.log" la stringa viene memorizzata in modo errato... dove sbaglio?

":msg,contains,"Droppato(out-sec): " ar/log/iptables.log"

Riga in allegato visto che nell'editor non viene visualizzata con il carattere spurio.

Ciao!

Codice: Seleziona tutto
#!/bin/bash
if ! mountpoint /tuadestinazione
then
      sed -i "s/\/tuadestinazione\/iptables.log/\var\/log\/iptables.log/g" /etc/rsyslog.d/iptables.conf
else
        sed -i "s/\/var\/log\/iptables.log/\/tuadestinazione\/iptables.log/g" /etc/rsyslog.d/iptables.conf
fi


Hai dimenticato uno slash / davanti a var/log/iptables.log...o meglio l'avevo dimeticato io!!!! ;D
byte64
Full Member
Full Member
 
Messaggi: 124
Iscritto il: 07/01/2017, 19:02
Località: Bergamo

Re: Problema con i log

Messaggioda MrHide » 15/02/2017, 17:59

Lo script funziona!!! Devo ancora verificare perchè all'avvio non effettua l'operazione.
Ho messo lo script, con permesso ad eseguire, nella directory che mi hai consigliato.
Come posso vedere se viene eseguito o meno?
Grazie. ;)

P.S. ho tolto l'estensione dal file (.sh) ora lo esegue ma non sostituisce la stringa... :(

EDIT P.P.S. domani, con calma e a mente fresca, gli do un'occhiata. Ho la netta sensazione che non vedo più gli errori. ;)
MrHide
Newbie
Newbie
 
Messaggi: 35
Iscritto il: 12/09/2015, 13:33

Re: Problema con i log

Messaggioda byte64 » 15/02/2017, 20:47

Prova ad avviare il pc con il disco esterno collegato, quando arrivi al prompt dai:
cat /etc/rsyslog.d/iptables.conf
Poi smonta il disco e riavvia senza ricollegarlo, ridai il comando sopra.
Vedrai che il percorso del file iptables.log è diverso ogni volta.
Lascia l'estensione, rende più chiaro lo scopo del file e controlla che sia proprietà di root e abbia permessi 755, poi cambia anche la prima riga da #!/bin/bash -> #!/bin/sh (anche se non dovrebbe servire).
Se ho capito bene hai messo il file in /etc/network/if-pre-up.d/ giusto? Se usi però network-manager per gestire la rete, ho il dubbio che lo scirpt non venga eseguito.....dovrei controllare.
Fai un test anche richiamando lo script o riportandolo in /etc/rc.local
byte64
Full Member
Full Member
 
Messaggi: 124
Iscritto il: 07/01/2017, 19:02
Località: Bergamo

Re: Problema con i log

Messaggioda MrHide » 18/02/2017, 9:24

Stamattina mi ci sono messo di impegno.
Finalmente questo problema è risolto, qualche errore dovuto ad una sintassi non propriamente user-friendly ma ora è ok.
Grazie 1000! :)
MrHide
Newbie
Newbie
 
Messaggi: 35
Iscritto il: 12/09/2015, 13:33


Torna a Sicurezza

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite

cron