Rastreo de Correo en Postfix

Juan Carlos Rojas jrojas en conicyt.cl
Mar Sep 2 11:23:18 CLT 2008


Me sirvio Muchas gracias


ATTE JCarlos

-----Mensaje original-----
De: linux-bounces en listas.inf.utfsm.cl [mailto:linux-bounces en listas.inf.utfsm.cl] En nombre de Germán Póo-Caamaño
Enviado el: lunes, 01 de septiembre de 2008 15:43
Para: Discusion de Linux en Castellano
Asunto: Re: Rastreo de Correo en Postfix

On Mon, 2008-09-01 at 14:23 -0400, Juan Carlos Rojas wrote:
> Hola Listeros, necesito realizar un seguimiento de un correo, por
> ejemplo información de cuando se envío y recibio un  correo y a que
> destinatario en postfix. Y si se puede que era lo que llevaba alguna
> tachado y subject. Ambos son usuarios locales.

Tienes que buscar en /var/log/mail.log

Dependiendo de la antigüedad y de la periodicidad de rotación de los que
tengas definido, probablemente debas buscar en mail.log.0,
mail.log.1.gz, etc.

El registro no queda guardado en una línea, sino en varias, dependiendo
del estado que se encuentren, para unirlos requieres del ID de la cola,
lo cual puedes obtener mediante:

$ awk -F: '/to=<foo en bar.cl>/ {print $4 }' /var/log/mail.log

Si sabes quien lo emitio, entonces cambiar 'to' por 'from'.  Con esos ID
puedes obtener la hora en que se recibió el mensaje, la hora en que se
despachó, el estado (importante para saber si se entregó, rebotó, etc.).

Lo que se registra es lo que corresponde al "sobre", no al "contenido",
por lo tanto no vas a saber ni el subject ni el adjunto.  Sin embargo,
tienes el tamaño del mensaje y con ello deducir si llevaba adjunto o no.

Podrías usar algo como:

for i in $(awk -F: '/to=<foo en bar.cl>/ {print $4}' /var/log/mail.log)
do
   grep $i /var/log/mail.log
done

Saludos,

--
Germán Póo-Caamaño
http://www.calcifer.org/




Más información sobre la lista de distribución Linux