Koozali.org: home of the SME Server

Visualizzazione log mail di utente

Offline Spillo

  • ***
  • 122
  • +0/-0
Visualizzazione log mail di utente
« on: September 26, 2017, 03:40:40 PM »
Salve,

a seguito di un controllo ho necessita di conoscere tutte le mail inviate e ricevute da un particolare utente.
La mail può essere stata inviata sia tramite thunderbird sia tramite webmail

Ho effettuato un grep -R "nomeaccount" *  sotto la directory /var/log ma non riesco a vedere date di spedizione e/o ricezione, ho usato  cat "nomeaccount"|tai64nlocal  ma non vedo le date......sto sbagliando qualcosa di sicuro....

quello che mi servirebbe è estrapolare riferito a quell'utente è una info del tipo

inviate: datamail   destinatario
ricevute: datamail mittente
 
grazie

Offline Stefano

  • *
  • 10,836
  • +2/-0
Re: Visualizzazione log mail di utente
« Reply #1 on: September 26, 2017, 04:42:11 PM »
ciao

i dati che ti servono sono in /var/log/qpsmtpd e /var/log/sqpsmtpd a seconda che siano stati inviati da webmail o thunderbird

prima di tutto ricorda che tali log sono sottoposti a rotazione e la rotazione dipende da quanta posta il server in oggetto si smazza.. se è tanta, i log presenti possono essere relativi ad un ristretto ambito temporale e questo ti limita nella ricerca del dato (soprattutto i quelli in uscita -> qpsmtpd)

per avere la posta inviata, creati un file test.sh (o come preferisci) nella directory dei log e mettici dentro:
Code: [Select]
for f in current \@*
do
 echo "Processing $f"
 grep '<KEY@' $f | grep logterse | tai64nlocal | awk ' {print $1,$2 $10, $11} '
done

dove KEY è l'indirizzo da cercare, nella forma utente@ o, meglio, indirizzo completo

Occhio che questo troverà tutti i messaggi inviati da utente (in sqpsmtpd), inviati da altri utenti del server a utente (sempre in sqpsmtpd) e tutti i messaggi ricevuti da utente da indirizzi esterni (in qpsmtpd)

l'output è del tipo:
Quote
2017-09-13 12:09:46.244515500 <utente@tuodominio.tld> <dest1@dominio.tld>
2017-09-13 18:02:48.981511500 <utente@tuodominio.tld> <dest1@dominio.tld>,<dest2@dominio.tld>
2017-09-14 18:21:48.870518500 <utente@tuodominio.tld> <destX@dominioY.tld>

l'ideale è redirigere l'output su un file di testo e poi elaborarlo esternamente

HTH

Offline Spillo

  • ***
  • 122
  • +0/-0
Re: Visualizzazione log mail di utente
« Reply #2 on: September 27, 2017, 09:11:20 AM »
Ciao,

grazie per lo script, ho potuto provarlo solo stamane visto che mi avevano inibito l'accesso al server.... funziona quasi come tu hai indicato ma il risultato è una cosa del tipo:

2017-09-26 10:27:17.876618500[indirizzo_IP_sorgente] <nome@miodominio.tdl>
2017-09-26 11:10:19.394903500[127.0.0.1] <accountinteressato@miodominio.tdl>

Ritengo che la prima sia una mail ricevuta e la seconda una mail inviata.....???
A prescindere che tutte le mail di questa persona soggetta a verifica (accountinteressato@miodominio.tdl) sono indirizzate ad utenti interni (in effetti si interfaccia solo con persone in azienda), non vedo l'input come tu l'hai indicato

2017-09-13 12:09:46.244515500 <utente@tuodominio.tld> <dest1@dominio.tld>

Credo che questo che ho ottenuto basti a chi di dovere, ma la cosa mi interessa per il futuro, siamo molto soggetti a queste verifiche

Grazie per quanto sopra

Offline Stefano

  • *
  • 10,836
  • +2/-0
Re: Visualizzazione log mail di utente
« Reply #3 on: September 27, 2017, 10:38:21 AM »
allora..

la riga è errata, manca una virgola, deve essere
Code: [Select]
grep '<KEY@' $f | grep logterse | tai64nlocal | awk ' {print $1,$2, $10, $11} '

questo filtro, eseguito sui file in sqpsmtpd, ti permette di sapere le mail inviate da (se compare nella prima colonna) o a (nella seconda) l'account di tuo interesse, tramite client di posta con smtp autenticato

per le mail inviate tramite webmail dovresti trovare risposta nei file in qpsmtpd e l'ordine dei campi dovrebbe essere rispettato.. in ogni caso fai un po' di prove (magari inviati un messaggio via webmail) e adatta la cosa ;-)

Offline Spillo

  • ***
  • 122
  • +0/-0
Re: Visualizzazione log mail di utente
« Reply #4 on: September 27, 2017, 12:27:44 PM »
Ciao,

Correzione fatta sullo script, l'output resta uguale a quello postato precedentemente, quindi mi mancano i destinatari
Fatto la prova su un altro SME e su questo l'output risulta essere identico a quello da te indicato per cui vedo mitt, dest1, dest2, etc.
Differenze nei log? Una cosa che non ho specificato perche la ritenevo inutile è che quella sulla quale ho fatto le prime prove è una versione 8 l'altra sulla quale l'output è esattamente come scrivi tu è una 9...... anche se ritengo che i log siano identici per le versioni....(???)

Offline Stefano

  • *
  • 10,836
  • +2/-0
Re: Visualizzazione log mail di utente
« Reply #5 on: September 27, 2017, 01:23:01 PM »
Ritieni, ahimè, male :-)

sono cambiate molte cose tra la 8 e la 9

i parametri $1 ecc sono i campi che vedi facendo

Code: [Select]
grep '<KEY@' $f | grep logterse | tai64nlocal
lo spazio è preso come separatore di campo.. quindi giostrati con i valori di $2, 3 ecc per visualizzare quello che serve sa te.. non ho una 8 per fare test

infine, la 8 è unsupported e potenzialmente insicura, e quindi non dovrebbe essere esposta su WAN e dovresti programmare un aggiornamento quanto prima.

Offline Spillo

  • ***
  • 122
  • +0/-0
Re: Visualizzazione log mail di utente
« Reply #6 on: September 28, 2017, 04:15:49 PM »
Ciao....

ok...sono andati via....  :grin:  ora posso verificare con calma quanto mi hai scritto e fare prove tanto prima o poi mi serve perche questi tornano...tornano sempre  :?

La versione 9 è in programma non appena cambiamo tutta l'infrastruttura....una decina di giorni.


Grazie