Address Rewriting mit Regex in allen Adressfeldern (From, To, Cc, ...)

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Address Rewriting mit Regex in allen Adressfeldern (From, To, Cc, ...)

Carsten Gummersbach
Guten Morgen,

auch nach intensiverer Suche habe ich noch keine Lösung für folgendes Problem gefunden: Wir möchten in den ausgehenden E-Mails (also die wir selber versenden), alle Adressfelder der Mail prüfen und ggfls. korrigieren. Konkretes Beispiel f. eine Adresse, die korrigiert werden soll (ursprüngliche Adresse -> geänderte Adresse):

carsten.gummersbach/CAMCO_GmbH@camco.de -> carsten.gummersbach@camco.de

Die verwendete Postfix Version ist 2.8.1.

Mein Ansatz war, das über header_checks mit Regex zu erledigen:

header_checks = regexp:/etc/postfix/header_checks

/etc/postfix/header_checks:
/^(To|From|Cc|Reply-To)(:.*)(\/CAMCO_GmbH)(.*)/ REPLACE $1$2$4

# Datenbank f. Postfix erzeugen (header_checks.db)
sudo /usr/sbin/postmap header_checks

# Testen kann man seine Filter ebenfalls mit postmap:
sudo postmap -q "Cc: Carsten.Gummersbach/CAMCO_GmbH@camco.de" regexp:/etc/postfix/header_checks
REPLACE Cc: Carsten.Gummersbach@camco.de


Wie man sieht, klappt das in diesem Fall auch. Allerdings funktioniert das nicht mehr, wenn mehrere Adressen in einer Zeile vorkommen, die korrigiert werden sollen:

sudo postmap -q "Cc: Carsten.Gummersbach/CAMCO_GmbH@camco.de, Foo.Bar/CAMCO_GmbH@camco.de" regexp:/etc/postfix/header_checks
REPLACE Cc: Carsten.Gummersbach/CAMCO_GmbH@camco.de, Foo.Bar@camco.de

Mir ist ebenfalls klar, dass dies mit dem gewählten Regex Pattern nicht funktionieren kann. Allerdings habe ich keine Idee, wie das Pattern aussehen müsste, um alle Vorkommen von "/CAMCO_GmbH" in der Zeile zu ersetzen. Oder gibt es eine andere Möglichkeit, so ein Rewriting in Postfix durchzuführen?

Vielen Dank im voraus für eure Beiträge.

Herzliche Grüße,

Carsten