Wie kann ich die Zustellung von E-Mails an eine bestimmte Domain (nicht lokal) mit Postfix vorübergehend aussetzen?


13

Mit Postfix und benutzerdefinierten Transporten kann ich die Zustellgeschwindigkeiten in Abhängigkeit von der Domäne des Empfängers verwalten. (Zum Beispiel sende ich maximal eine Nachricht pro Sekunde an *@hotmail.com)

Ich verwende ähnliche Regeln auch, um ungültige Ziele zu blockieren (htmail.com wird sofort blockiert, um viele Schleifen in der Warteschlange zu vermeiden).

Ich möchte jedoch die Zustellung von E-Mails an ein Ziel für 24 oder 48 Stunden vorübergehend aussetzen (E-Mails an *@gmail.com ausgesetzt, alles andere wird zugestellt). Nachrichten würden während dieser Zeit in der Warteschlange stehen und nur zugestellt werden, wenn ich die Konfiguration ändern möchte.

Weiß jemand, wie man das macht?

Vielen Dank

Antworten:


20

Versetzen Sie Nachrichten in einen HOLD-Zustand

/etc/postfix/main.cf:

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

/ etc / postfix / hold:

gmail.com        HOLD
blah.com         HOLD

Stellen Sie sicher, dass Sie ausgeführt werden, postmap hash:/etc/postfix/holdwenn Sie die Datei aktualisieren.

Wenn Sie alle gehaltenen Nachrichten freigeben möchten, verwenden Sie postsuper :

# postsuper -H ALL

Sieht so aus, als würde es doch nicht funktionieren. Mail wird sofort gesendet. Vielleicht, weil ich E-Mails von $ mynetworks verschicke? REJECT und DISCARD funktionieren auch nicht, ich musste mich an den Transportfehler halten:
Julien Tartarin

Ok, meine schlechte, lokal mit mailx gesendete Mail wird nicht geprüft, da sie nicht an smtpd gesendet wird. Funktioniert sehr gut :)
Julien Tartarin


0

So halten Sie eine bestimmte Domain an:

postqueue -p | awk 'BEGIN { RS = "" } { if ($7 == "your@domain.com" ) print $1 }' | tr -d '!*' | postsuper -h -

So geben Sie für eine bestimmte Domain frei:

postqueue -p | awk 'BEGIN { RS = "" } { if ($7 == "your@domain.com" ) print $1 }' | tr -d '!*' | postsuper -H -

Einfach nein. Die $ 7 entsprechen der Absender-E-Mail-Adresse in derselben Zeile wie die Warteschlangen-ID. Die E-Mail-Adresse des Empfängers befindet sich in der nächsten Zeile und muss mit der Domain und nicht mit der E-Mail übereinstimmen.
Antti Rytsölä
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.