¿Cómo suspendo temporalmente la entrega de correo a un dominio específico (no local) con Postfix?

13

Utilizando Postfix y transportes personalizados puedo administrar las velocidades de entrega dependiendo del dominio del destinatario. (Por ejemplo, envío un máximo de un mensaje por segundo a *@hotmail.com)

También uso reglas similares para bloquear destinos malos (htmail.com se bloquea de inmediato, evitando muchos bucles en la cola).

Sin embargo, me gustaría suspender temporalmente la entrega de correo a un destino por 24 o 48 horas (correos a *@gmail.com suspendidos, todo lo demás entregado). Los mensajes se pondrían en cola durante este tiempo y se entregarían solo cuando lo desee cambiando la configuración.

Alguien sabe cómo hacer eso ?

Gracias

Julien Tartarin
fuente

Respuestas:

20

Poner mensajes en estado HOLD

/etc/postfix/main.cf:

smtpd_recipient_restrictions = 
    ...
    check_recipient_access hash:/etc/postfix/hold

/ etc / postfix / hold:

gmail.com        HOLD
blah.com         HOLD

Asegúrese de ejecutar postmap hash:/etc/postfix/holdcada vez que actualice el archivo.

Si desea liberar todos los mensajes en espera, use postsuper :

# postsuper -H ALL
Philip Reynolds
fuente
Parece que no funciona después de todo. El correo se envía de inmediato. ¿Tal vez porque envío correo desde $ mynetworks? RECHAZAR y DESECHAR tampoco funcionan, tuve que ir con el error de transporte:
Julien Tartarin
Ok, mi error, el correo enviado localmente con mailx no está marcado porque no se envía a smtpd. Funciona muy bien :)
Julien Tartarin
0

Para poner en espera para un dominio específico:

postqueue -p | awk 'BEGIN { RS = "" } { if ($7 == "[email protected]" ) print $1 }' | tr -d '!*' | postsuper -h -

Para liberar para un dominio específico:

postqueue -p | awk 'BEGIN { RS = "" } { if ($7 == "[email protected]" ) print $1 }' | tr -d '!*' | postsuper -H -
Salim Bennouri
fuente
Simplemente no. Los $ 7 coincidirán con la dirección de correo electrónico del remitente en la misma línea que la ID de la cola. La dirección de correo electrónico del destinatario se encuentra en la línea siguiente y necesita una coincidencia de dominio, no una coincidencia de correo electrónico.
Antti Rytsölä