[Postfix-es] Procesamiento de mails en cuentas virtuales
Simon J Mudd
sjmudd en pobox.com
Vie Sep 30 23:27:22 CEST 2005
listas at canal21.com (Bhean) writes:
> Buenas tardes,
>
> Gracias por tu respuesta, Simon.
>
> Al final, me he decidido por una solución que aunque creo que es la más
> "limpia" no acaba de funcionar correctamente.
>
> He definido un nuevo transporte en el archivo "transports" como este:
>
> mailparser.midominio.com parsearMensaje:
>
> Y el respectivo filtro en master.cf:
>
> parsearMensaje unix - n n - - pipe
> flags=F user=nobody argv=/servidor/scripts/parsearMensaje.pl
>
> Una vez hecho esto, como solo quiero que se envien al script los
> mensajes que lleguen a una cuenta determinada, he creado un ALIAS para
> esa cuenta, que viene a decir esto:
>
> usuario at midominio.com:
> |
> |-> usuario at midominio.com
> \-> usuario at mailparser.midominio.com
>
> De forma que todo lo que se envie a la cuenta usuario at midominio.com es
> entregado en su mailbox, y ademas entregado al script definido en master.cf
>
> El problema es que Postfix no entrega a traves del PIPE definido en
> master.cf todo el mensaje al script, sino solo una linea con el
> remitente y la fecha. He modificado el script para que me muestre todo
> lo que Postfix le entrega a traves de la tuberia, y esto es todo lo que
> muestra:
>
> From cliente at otrodominio.com Fri Sep 30 18:17:48 2005
>
> No se como hacer para que Postfix entregue a traves de una tubería TODO
> el contenido del mensaje al script.
>
> Alguna idea de como hacerlo?
Para mi me funciona con una preuba asi:
/etc/postfix/master.cf
simontest unix - n n - - pipe
flags=F user=sjmudd argv=/home/sjmudd/testcat.sh ($recipient})
/etc/postfix/transport
simontest at nl.wl0.org simontest:
/home/sjmudd/testcat.sh
#!/bin/sh
(
echo "start"
cat -
echo "stop"
) >> /tmp/pipeoutput.txt
y los logs
Sep 30 23:22:41 ams03 postfix/smtp[17925]: B5CD2A32D6: to=<simontest at nl.wl0.org>, relay=127.0.0.1[127.0.0.1], delay=1, status=sent (250 2.6.0 Ok, id=16984-09, from MTA([127.0.0.1]:10025): 250 Ok: queued as 705EEA32D3)
Sep 30 23:22:41 ams03 postfix/qmgr[17918]: B5CD2A32D6: removed
Sep 30 23:22:41 ams03 postfix/pipe[17929]: 705EEA32D3: to=<simontest at nl.wl0.org>, relay=simontest, delay=0, status=sent (nl.wl0.org)
Sep 30 23:22:41 ams03 postfix/qmgr[17918]: 705EEA32D3: removed
El contenido del archivo es:
[sjmudd at ams03 COS4 ~]$ cat /tmp/pipeoutput.txt
start
>From root at nl.WL0.org Fri Sep 30 23:22:41 2005
Received: from localhost (unknown [127.0.0.1])
by ams03.wl0.org (Postfix) with ESMTP id 705EEA32D3
for <simontest at nl.wl0.org>; Fri, 30 Sep 2005 21:22:41 +0000 (UTC)
Received: from send-to-amavis ([127.0.0.1])
by localhost (ams03.wl0.org [127.0.0.1]) (amavisd-new, port 10024) with SMTP
id 16984-09 for <simontest at nl.wl0.org>;
Fri, 30 Sep 2005 23:22:40 +0200 (CEST)
Received: by ams03.wl0.org (Postfix, from userid 0)
id B5CD2A32D6; Fri, 30 Sep 2005 23:22:40 +0200 (CEST)
To: simontest at nl.wl0.org
Subject: hello
Message-Id: <20050930212240.B5CD2A32D6 at ams03.wl0.org>
Date: Fri, 30 Sep 2005 23:22:40 +0200 (CEST)
From: root at nl.WL0.org (root)
X-Virus-Scanned: amavisd-new at wl0.org
dksadfj
sdfasdf
dfa
stop
$
Asi que no se lo que estaras haciendo...
Simon
Más información sobre la lista de distribución Postfix-es