Page 1 of 1
Sender in Postfix Mailq nachträglich ändern
Posted: Mon 21. Mar 2022, 11:00
by space2place
Moin zusammen,
ich suche gerade eine einfache Lösung über 1300 Emails, welche in der Postfix Mailq hängen, zu ändern.
Der Admin von dem Server hat den Server leider so eingestellt das die Emails mit dem Absender "
www-data@server.tld" versendet werden.
Ich habe schon mit "sender_canonical" gearbeitet das zukünftige Emails nur noch mit dem richtigen Absender versendet werden.
Nun versuche ich krampfhaft die in der Queue liegenden Emails umschreiben zu lassen. Ein "header_checks" mit
Code: Select all
/^From:[[:space:]]+(.*)/ REPLACE From: "Versand" <absender@domain.tld>
und ein Resend der Mailq hat leider nicht geholfen.
Hat einer von Euch noch eine Idee wie man das elegant ändern kann?
Wie man den Empfänger nächträglich ändert weiss ich, aber das geht nur über das extrahieren der Email und neu versenden.
Gruß
Sascha
Re: Sender in Postfix Mailq nachträglich ändern
Posted: Mon 21. Mar 2022, 11:08
by Tobi
Ich denke dein RegEx scheitert am Zeilenende und nimmt dann den gesamten Rest der Mail und ersetzt ihn. Das geht natürlich schief.
Probier es doch simpler:
Re: Sender in Postfix Mailq nachträglich ändern
Posted: Mon 21. Mar 2022, 11:36
by Jolinar
space2place wrote: ↑Mon 21. Mar 2022, 11:00
Hat einer von Euch noch eine Idee wie man das elegant ändern kann?
Da die Mails als Textfiles vorliegen, kannst du die doch relativ einfach mit
sed umschreiben.
Re: Sender in Postfix Mailq nachträglich ändern
Posted: Mon 21. Mar 2022, 11:37
by space2place
Hi Tobi
ich habe jetzt
Code: Select all
/^www-data@server\.srv1\.domain\.tld/ REPLACE bestellung@domain.tld
in die "header_checks" eingetragen.
Anschließend
und in der main.cf
steht
Code: Select all
smtp_header_checks = regexp:/etc/postfix/header_checks
Nach dem Reload leider keine Änderung.
Gruß
Sascha
Re: Sender in Postfix Mailq nachträglich ändern
Posted: Mon 21. Mar 2022, 11:48
by space2place
Jolinar wrote: ↑Mon 21. Mar 2022, 11:36
space2place wrote: ↑Mon 21. Mar 2022, 11:00
Hat einer von Euch noch eine Idee wie man das elegant ändern kann?
Da die Mails als Textfiles vorliegen, kannst du die doch relativ einfach mit
sed umschreiben.
Das wäre jetzt auch ein Ansatz.. Unter "/var/spool/postfix/deferred/" gibt es noch mehrere Unterverezcihnisse.. Aber mit SED sollte das gut funktionieren.. Muss mir mal was zusammenbauen.. Danke für den Denkanstoss
Re: Sender in Postfix Mailq nachträglich ändern
Posted: Mon 21. Mar 2022, 11:59
by space2place
Das wäre jetzt mein Ansatz
Code: Select all
find /var/spool/postfix/deferred/ -type f -exec sed -i -e 's/www-data@server.srv1.domain.tld/bestellung@domain.tld/g' {} \;
Mit einer EMail habe ich das mal gesetzt...
Nur bekommt die in der Mailq jetzt beim Absender ein "M" hinten dran
Code: Select all
4B0DB8438 17675 Sun Mar 20 19:49:34 bestellung@domain.tldM
Hat eine eine Idee wie ich das unterbinden kann?
Re: Sender in Postfix Mailq nachträglich ändern
Posted: Mon 21. Mar 2022, 12:26
by Jolinar
Wofür setzt du den Parameter "-e" im sed Kommando?
Sollte normalerweise mit dieser Syntax funktionieren:
Code: Select all
$ find /<Pfad>/<Dateien> -type f -exec sed -i 's/<alter Begriff>/<neuer Begriff>/g' {} \;
Re: Sender in Postfix Mailq nachträglich ändern
Posted: Mon 21. Mar 2022, 13:01
by space2place
Jolinar wrote: ↑Mon 21. Mar 2022, 12:26
Wofür setzt du den Parameter "-e" im sed Kommando?
Gute Frage.. Keine Ahnung warum ich das genutzt habe.. Ja es funktioniert, nur das nach der Änderung immer dieses "M" hinter der neuen Emailadresse steht.
Re: Sender in Postfix Mailq nachträglich ändern
Posted: Mon 21. Mar 2022, 13:35
by Jolinar
space2place wrote: ↑Mon 21. Mar 2022, 11:48
Danke für den Denkanstoss
Da war ich wohl doch voreilig.
Habs grad mal auf meiner Testinstanz nachgestellt...Hab zum Ersetzen eine längere Adresse genommen, die wurde einfach abgeschnitten. Bei kürzeren Adressen erscheinen auch zufällige Zeichen bei mir.
Ich vermute mal, daß es daran liegt, daß die in der Queue gespeicherten Mails doch keine reinen Textfiles sind und nicht darstellbare Zeichen enthalten.
Edit:
Schau mal hier:
https://serverfault.com/questions/62321 ... d-messages
Re: Sender in Postfix Mailq nachträglich ändern [SOLVED]
Posted: Mon 21. Mar 2022, 14:41
by space2place
Das liest sich sehr gut.. Danke für die Unterstützung.
Edit: hier nun die Lösung
vi /etc/postfix/generic
Inhalt:
Code: Select all
www-data@server.srv1.domain.tld bestellung@domain.tld
vi /etc/postfix/sender_canonical
Inhalt:
Code: Select all
www-data@server.srv1.domain.tld bestellung@domain.tld
Dann folgendes ausführen:
Code: Select all
postmap /etc/postfix/generic
postmap /etc/postfix/sender_canonical
In die main.cf einfügen:
Code: Select all
sender_canonical_maps=hash:/etc/postfix/sender_canonical
smtp_generic_maps = hash:/etc/postfix/generic
Postfix reloaden und als letztes die Emails noch einmal anstarten:
Jetzt ist der Absender überall richtig.