Ich habe einen Postfix-Server mit SMTP AUTH eingerichtet (STARTTLS an Port 587). Alle meine Benutzer befinden sich in der Domain "example.org". Ich möchte erzwingen, dass die Absenderadresse "[email protected]" ist.
Ich habe gelernt, dass dies mit den Optionen main.cf erreicht werden kann
smtpd_sender_restrictions = reject_sender_login_mismatch, ...
smtpd_sender_login_maps = hash:/etc/postfix/smtpd_sender_login_maps
mit einer login_maps Datei wie:
[email protected] a
[email protected] b
[email protected] c
...
(Siehe auch Spoofing von Absenderadressen mit SMPT AUTH blockieren ), aber dies würde bedeuten, dass ich die Datei login_maps jedes Mal bearbeiten muss, wenn ich einen neuen Benutzer habe. Ich brauche kein so flexibles Mapping: Es sollte immer "[email protected]" sein. Gibt es eine einfachere Möglichkeit?
sudo apt-get install postfix-pcre
. Vielleicht war das für die meisten offensichtlich.$myhostname
?. Hier können Sie sehen, dass Postfix in der Lage ist, die Nachschlagetabelle nach dem Benutzerteil der E-Mail zu durchsuchen ...Der in der anderen Antwort erwähnte reguläre Ausdruck stimmt mit dem Benutzerteil der E-Mail-Adresse überein ( Eingeloggter Benutzer @ example.org). Hier finden Sie einige zusätzliche Informationen.
Verwenden Sie den folgenden regulären Ausdruck (zum Beispiel in
/etc/postfix/login_map
), um die vollständige E-Mail-Adresse als Benutzernamen zu verwenden :Dies bedeutet, dass Ihr Benutzername immer Ihre vollständige E-Mail-Adresse ist ( [email protected] ) - von dieser Adresse darf kein anderer vorhandener Benutzername gesendet werden - und Sie müssen nicht jedes Mal eine zusätzliche Postfix-Konfigurationsdatei aktualisieren Einen Benutzer hinzufügen.
Dies kann auf einem Server verwendet werden, auf dem mehrere Domänen konfiguriert sind. Der Benutzer [email protected] darf nur von dieser Adresse senden, nicht jedoch von [email protected] (anderer Benutzer und E-Mail- Adresse , andere Person). Der Benutzername john.doe wäre in diesem Fall nicht eindeutig.
Abhängig von Ihrer Konfiguration befindet sich die Einstellung smtpd_sender_login_maps, die auf diese Datei verweisen muss, möglicherweise in der Datei master.cf (anstelle der Datei main.cf). Die offizielle Dovecot-Dokumentation enthält das folgende Beispiel (wenn Sie SASL / Submission verwenden):
In diesem Beispiel sollte die Einstellung so angepasst werden, dass sie auf die richtige Datei zeigt und Regex oder (besser) pcre als Typ verwendet. Insbesondere wenn eine Datei mit dem Namen "virtual" bereits für einen anderen Zweck verwendet wird (zum Beispiel für virtual_alias_maps, wie in einem offiziellen Postfix-Beispiel gezeigt ), sollte eine andere Datei für das Login-Mapping verwendet werden.
Von:
Zu:
quelle
Können Sie eine Kombination von regulären Ausdrücken für den Header verwenden, wie hier gezeigt: http://www.akadia.com/services/postfix_uce.html ? Dann können Sie mit regulären Ausdrücken wie [*@example.org] kombinieren, um sicherzustellen, dass nur Absender von example.org vorhanden sind.
quelle