[Postfix-es] evitar rebote de MAILER-DAEMON

Simon J Mudd sjmudd en pobox.com
Mie Dic 14 19:32:26 CET 2005


rodolfo at pilas.net (Rodolfo Pilas) writes:

> Tengo una dirección en mi servidor que forwardea a otra cuenta:
> 	info at miservidor.com  ->   pepe at yahoo.com
> 
> Cuando alguien se presenta con rcpt to: info at miservidor.com mi servidor
> acepta el mensaje pues es un usuario válido, pero si por algun motivo el
> mail no puede ser entregado a pepe at yahoo.com pues el MX de yahoo.com lo
> rechaza (por ejemplo presencia de virus), mi servidor produce una respuesta
> 	" Undelivered Mail Returned to Sender "
> a la dirección de origen (mail from:)
> 
> Hasta aquí todo bien y parece lógico que así sea el procedimiento; pero
> supongamos el escenario donde alguien (un spammer o un virus) envía con
> una from: falso, pero existente (algo muy común)
> 
> mail from: postfix-es at lists.wl0.org
> rcpt to: info at miservidor.com
> 
> y un virus attacheado al mensaje.....  En este caso, mi servidor estaría
> "distribuyendo" un virus a postfix-es at lists.wl0.org con un hermoso
> mensaje de " Undelivered Mail Returned to Sender ".
> 
> Cual es la solución posible?

Si la direccion del recipiente (info at miservidor.com) es valida acepta el mensajes.
Si la direccion del recipiente (otrainfo at miservidor.com) NO es valida NO acepta el mensaje.

De esta manera (como ves) no produces lo que se llama
backscatter. Esto significa que tu postfix solo deberia aceptar
mensajes para los dominios locales o los que hace como relay_domains
si conoce las direcciones email de los destinos finales.

si empleas soluciones antivirus ellos deberian estar configurados para
NO avisar al remitente del hecho que el mensaje no fue aceptado por
ser tratado como spam.  Amavis y spam assassin pueden estar
configurados de esta manera.

Para las otras situaciones "reales" cuando la entrega al recipiente no
es posible (por motivos como cuota etc...) no tienes mas remedio que
devolver el "bounce" para avisar.  De hecho es un requirimiento del
software (postfix, sendmail, ...) de que si aceptan un mensajes tienen
que avisar de la NO entrega del mensaje.

Una cosa que puedes hacer (si no lo tienes hecho todavia) es de
configurar postfix para no aceptar mensaje de dominios invalidos.

Las siguientes restricciones son utiles para ello puestos al principio
de smtpd_recipient_restrictions.

        reject_non_fqdn_recipient
        reject_non_fqdn_sender
        reject_unknown_sender_domain
        reject_unknown_recipient_domain

> Poner un antivirus: no parece solución pues igual mi antivirus puede
> saltarse algun virus detectado por el servidor de destino y nuevamente
> mi servidor estaría enviando el virus hacia atras.  Y si el problema es
> casilla llena (over quota)?

Un antivirus ayuda pero no solo para detectar los virus pero tambien
para evitar su retransmision a terceros. Finalmente puso uno en mi
servidor a pesar de usar UNIX y a pesar del hecho que no me "afectan".
De no filtrarlos alguno se volvio a re-enviar a los
suscriptores de esta lista, cosa que no queda demasiado bien.

Amavis-new funciona bastante bien y usado con spamassassin y clamav va
bien. Hay otros antivirus que puedes incorporar. Lo unico es que se
tiene que mantener actualizados cosa que requiere horas de dedicacion
a "tareas inutiles" asi que quiza lo mejor es eligir un mecanismo que
te permite actualizar el software con facilidad (y no a mano) de
manera periodica. (Yo uso OpenPKG y esta bastante bien actualizado.)

Simon


Más información sobre la lista de distribución Postfix-es