Tengo alias configurados en postfix, como los siguientes:
[email protected]: [email protected], [email protected] ...
Cuando se envía un correo electrónico a [email protected], y cualquiera de los destinatarios de ese alias es cc: ed, que es bastante común (es decir, "Responder a todos"), el correo electrónico se entrega por duplicado. Por ejemplo, si se envía un correo electrónico a [email protected] y [email protected] es cc: ed, se entregará dos veces. De acuerdo con las preguntas frecuentes de Postfix , esto es así por diseño, ya que Postfix envía correo electrónico en paralelo sin expandir los grupos, lo que lo hace más rápido que sendmail. Ahora todo está bien, pero ¿es posible configurar Postfix para eliminar realmente los destinatarios duplicados antes de enviar el correo electrónico?
He encontrado muchas publicaciones de personas en toda la red que tienen el mismo problema, pero aún no he encontrado una respuesta. Si esto no es posible en Postfix, ¿es posible hacerlo en algún lugar del camino? He intentado educar a mis usuarios, pero me temo que es bastante inútil ...
Estoy ejecutando postfix en Mac OS X Server 10.6, amavis está configurado como content_filter y dovecot está configurado como buzón_comando. Intenté configurar procmail como content_filter para la entrega de smtp (según la sugerencia a continuación), pero parece que no puedo hacerlo bien. Por varias razones, no puedo reemplazar la configuración estándar de OS X, lo que significa que postfix, amavis y dovecot se quedan. Sin embargo, puedo agregarlo si lo deseo.
fuente
Respuestas:
Postfix no tiene idea de correos electrónicos duplicados debido a la forma en que está estructurado. Es posible hacer lo que está sugiriendo utilizando procmail como su agente de entrega.
Esencialmente, cada mensaje proveniente de un cliente debe entregarse con un Id. De mensaje único. En el caso de que se entregue a varias personas, el Id. De mensaje debe ser el mismo, por lo que guardamos los
Message-Id
encabezados que hemos visto y descartamos y los futuros que coincidan con esa lista.De http://novosial.org/procmail/
fuente
content_filter
que le permitirá realizar la misma tarea a nivel globalHay una manera de hacerlo, pero no usando Postfix en sí.
Si está utilizando una implementación razonablemente reciente de Dovecot con Pigeonhole de Sieve , hay una extensión especial que se puede usar para la deduplicación en el momento de la entrega. En Dovecot anterior a 2.2.18, el nombre de esta extensión es "vnd.dovecot.duplicate" y está deshabilitado de forma predeterminada, en las versiones más recientes la extensión se llama "duplicado" y ya debería estar habilitada, pero habilitarla explícitamente no lo hará. daño.
/etc/dovecot/conf.d/90-sieve.conf:
Luego, cree el script de tamiz para manejar la deduplicación en sí (puede ajustar el nombre de archivo como mejor le parezca).
/mnt/mail/users/global_sieve/deduplicate.sieve:
Compilar la secuencia de comandos con sievec y asegúrese de que el guión es legible por palomar usuario. Más en Dovecot docs.
Si está utilizando Cyrus, hay una función de supresión de entrega de mensajes duplicados que se puede habilitar utilizando
suppress_duplicates = yes
.fuente
duplicate
extensión funciona a nivel de usuario. Intenté detener los duplicados en varios usuarios To / Cc-d en unfileinto
buzón central . Esto no funciona También tenía que establecer una entrada general postfixvirtual_alias_maps
, como@domain.com [email protected]
, entonces, la verificación duplicada del tamiz alcanzarácatchall
la lista de duplicados del usuario.Una solución que el trabajo para mí es complemento
-o receive_override_options=no_address_mappings
demaster.cf
Aquí el documento: http://www.postfix.org/postconf.5.html#receive_override_options
fuente
Esto es de algunas antiguas preguntas frecuentes postfix:
Postfix envía correos duplicados Algunas personas se quejarán de que Postfix envía mensajes duplicados. Esto sucede cada vez que se envía un mensaje a varias direcciones que llegan al mismo usuario. Ejemplos de tales escenarios son:
Entonces, por diseño, estás viendo ese comportamiento. Quizás si encuentra un filtro de contenido que puede eliminar las identificaciones de mensajes duplicados, puede eliminar esto después del evento de entrega.
Sendmail no tiene este problema porque expande todo primero y elimina los duplicados.
fuente
La solución oficial está aquí ... http://osdir.com/ml/mail.postfix.devel/2007-05/msg00010.html
duplicate_filter_limit (10000) El número máximo de direcciones recordadas por los filtros duplicados del destinatario para alias (5) o virtual (5) expansión de alias, o para pantallas de cola showq (8) (con versiones anteriores de Postfix, el límite predeterminado era 1000).
duplicate_filter_style (estricto) La política de filtro de destinatario duplicado: estricto o pragmático.
fuente
Lo puse en mi main.cf y funcionó bien, pero solo para el correo enviado desde mi dominio. Todavía tengo duplicados si envío correos electrónicos desde fuera de mi dominio (yahoo a mi dominio, por ejemplo).
fuente: http://article.gmane.org/gmane.mail.postfix.user/119783
fuente