Jak tymczasowo zawiesić dostarczanie poczty do określonej domeny (nielokalnej) za pomocą Postfix?

13

Korzystając z Postfix i niestandardowych transportów, mogę zarządzać prędkościami dostarczania w zależności od domeny odbiorcy. (Na przykład wysyłam maksymalnie jedną wiadomość na sekundę do *@hotmail.com)

Korzystam również z podobnych reguł, aby blokować złe miejsca docelowe (htmail.com jest natychmiast blokowany, co pozwala uniknąć wielu pętli w kolejce).

Chciałbym jednak tymczasowo zawiesić dostarczanie poczty do miejsca docelowego na 24 lub 48 godzin (e-maile na adres *@gmail.com zostały zawieszone, wszystko inne dostarczone). W tym czasie wiadomości ustawiałyby się w kolejce i były dostarczane tylko wtedy, gdy chcę, zmieniając konfigurację.

Czy ktoś wie jak to zrobić?

Dzięki

Julien Tartarin
źródło

Odpowiedzi:

21

Umieść wiadomości w stanie HOLD

/etc/postfix/main.cf:

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

/ etc / postfix / hold:

gmail.com        HOLD
blah.com         HOLD

Upewnij się, że uruchamiasz się przy postmap hash:/etc/postfix/holdkażdej aktualizacji pliku.

Jeśli chcesz zwolnić wszystkie wiadomości, użyj postuper :

# postsuper -H ALL
Philip Reynolds
źródło
Wygląda na to, że to jednak nie działa. Poczta jest natychmiast przesyłana. Może dlatego, że wysyłam pocztę z $ mynetworks? REJECT i DISCARD też nie działają, musiałem iść z błędem transportu:
Julien Tartarin
Ok, moja zła poczta wysyłana lokalnie za pomocą mailx nie jest sprawdzana, ponieważ nie jest wysyłana do smtpd. Działa bardzo dobrze :)
Julien Tartarin
2

Możesz to zrobić za pomocą mapy transportowej :

gmail.com defer:

adapttr
źródło
0

Aby zawiesić dla określonej domeny:

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

Aby zwolnić dla określonej domeny:

postqueue -p | awk 'BEGIN { RS = "" } { if ($7 == "[email protected]" ) print $1 }' | tr -d '!*' | postsuper -H -
Salim Bennouri
źródło
Po prostu nie. 7 USD będzie zgodne z adresem e-mail nadawcy w tym samym wierszu, co identyfikator kolejki. Adres e-mail odbiorcy znajduje się w następnym wierszu i wymaga dopasowania domeny, a nie adresu e-mail.
Antti Rytsölä