Wie konfiguriere ich Postfix so, dass es nur an Adressen auf der Whitelist gesendet wird?

7

Ich möchte Postfix so konfigurieren, dass nur E-Mails an Adressen in einer Whitelist gesendet werden. Ich habe versucht, smtpd_recipient_restrictionsin main.cfso zu verwenden:

smtpd_recipient_restrictions =
    reject_unauth_destination
    check_recipient_access hash:/path/to/whitelist

Die Whitelist-Datei hat das Format

[email protected]    OK
[email protected]    OK

Und dann mit dem postmapBefehl in einen Hash übersetzt .

Das Relay sendet jedoch E-Mails an Adressen, die nicht auf der Whitelist stehen. Was vermisse ich?

Bearbeiten: Ich sende diese Mail über den sendmailBefehl, der anscheinend die smptd-Einschränkungen umgeht. Gibt es eine Möglichkeit, damit umzugehen?

Bearbeiten 2 / Der Rest der Geschichte: Ich habe ziemlich viel Zeit damit verbracht, sendmail über SMTP senden zu lassen, nur um festzustellen, dass der von mir verwendete Befehl nicht sendmail war, sondern die sendmail-Kompatibilitätsoberfläche von postfix, die die Funktionalität nachahmt, aber nicht dazu aufgefordert werden kann benutze SMTP soweit ich das beurteilen kann.

Die Lösung von 84104 funktionierte jedoch perfekt.

Puffenstuff
quelle
Sie müssen die Ausgabe von bereitstellen postconf -n, damit wir sehen können, was real ist.
Adaptr

Antworten:

6

Sie haben postfix angewiesen, einige Arten von E-Mails abzulehnen und andere E- Mails anzunehmen. Es ist möglich, dass einige Nachrichten von keinem der Filter abgefangen werden. In diesem Fall sind sie zulässig. Ich denke, Sie möchten ihm sagen, dass er nur die Liste akzeptieren (prüfen) und alles andere ablehnen soll.

smtpd_recipient_restrictions =
    check_recipient_access hash:/path/to/whitelist
    reject

als Antwort auf die Bearbeitung:
sendmail(1)verwendet postdrop(1)nicht smtpd(8) Eine Möglichkeit, etwas zu erreichen, nach dem Sie suchen, besteht darin, transport(5)das Verhalten zu manipulieren .

main.cf
    transport_maps = hash:/etc/postfix/transport

transport
    [email protected] :
    [email protected] :
    [email protected] :
    * error: Recipient not whitelisted.

Hinweis: Wenn Sie die Absenderadresse nicht in die Transportkarte aufnehmen, können keine Absprungnachrichten empfangen werden.

84104
quelle
Das macht Sinn, scheint aber nicht mein Hauptproblem zu sein. Wenn ich es ändere smtpd_recipient_restrictions = reject, wird die Mail trotzdem zugestellt.
Puffenstuff
transportErstellen Sie mit der Methode die Hash-Map mit sudo postmap /etc/postfix/transport.
nnutter