msmtp - "From:" Header in jeder Mail ändern

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
MrNicNac
Beiträge: 7
Registriert: 25.07.2021 15:38:01

msmtp - "From:" Header in jeder Mail ändern

Beitrag von MrNicNac » 31.08.2021 20:03:28

Hallo,
ich möchte von einem Server Benachrichtigungen via Mail versenden.
Das soll über einen externen SMTP Server (Freemailer) passieren.

Dazu habe ich die folgenden Pakete installiert: Debianmsmtp Debianmsmtp-mta Debianbsd-mailx
Die Zugangsdaten etc. habe ich entsprechend in /etc/msmtprc konfiguriert.

Der Versand einer Mail mit folgendem Befehl funktioniert problemlos:

Code: Alles auswählen

echo "test" | sudo mail -s "msmtp test" recipient@mail.xyz
Nun möchte ich aber einen "From:" Header setzen, der den Hostnamen enthält.
Sonst wird es etwas schwierig die Mails einem entsprechenden Server zuzuordnen.

Auch das funktioniert mit folgendem Befehl problemlos:

Code: Alles auswählen

echo "test" | sudo mail -r "custom from <sender@mail.xyz>" -s "msmtp test" recipient@mail.xyz
Nur kann ich leider nicht jedem Programm (z.B. apticron) das Mails verschickt mitteilen, die Option "-r" zu verwenden.
Ich möchte es also irgendwie hinbekommen, dass der From Header bei jeder ausgehenden Mail automatisch gesetzt wird.

Ich habe schon versucht in /etc/mail.rc folgende Option einzutragen:

Code: Alles auswählen

set sendmail="/usr/bin/mail -r 'custom from <sender@mail.xyz>'"
# oder
set sendmail="/usr/bin/mail -r \"custom from \<sender@mail.xyz\>\""
Leider funktioniert das nicht:
[]"/usr/bin/mail -r "custom from <sender@mail.xyz>"": Ambiguous.
mail: (null): Bad address
Can't send mail: sendmail process failed with error code 1[/code]

Ich wäre sehr dankbar für Hilfe!

Benutzeravatar
shoening
Beiträge: 897
Registriert: 28.01.2005 21:05:59
Lizenz eigener Beiträge: MIT Lizenz

Re: msmtp - "From:" Header in jeder Mail ändern

Beitrag von shoening » 01.09.2021 09:18:28

Hallo,

ich habe in meiner .msmtprc Datei Einträge für mehrere accounts eingetragen, und habe dann pro Account eine "from" Klausel angegeben.

Alternativ kann man die "from" Klausel auf mittels "--from" oder "-f" auf der Kommandozeile angeben.

Mir ist allerdings bei der beschriebenen Konnstellation nicht klar, wie durch aufruf von "mail" dann "msmtp" ins Spiel kommt.

Viele Grüße
Stefan
Bürokratie kann man nur durch ihre Anwendung bekämpfen.

Benutzeravatar
oln
Beiträge: 483
Registriert: 05.01.2021 09:41:24

Re: msmtp - "From:" Header in jeder Mail ändern

Beitrag von oln » 01.09.2021 11:11:48

Moin,
MrNicNac hat geschrieben: ↑ zum Beitrag ↑
31.08.2021 20:03:28

Code: Alles auswählen

set sendmail="/usr/bin/mail -r 'custom from <sender@mail.xyz>'"
# oder
set sendmail="/usr/bin/mail -r \"custom from \<sender@mail.xyz\>\""
Leider funktioniert das nicht:
[]"/usr/bin/mail -r "custom from <sender@mail.xyz>"": Ambiguous.
mail: (null): Bad address
Can't send mail: sendmail process failed with error code 1[/code]

Ich wäre sehr dankbar für Hilfe!
eigentlich steht dort alles. Wenn man mal die Hilfe zu mail ansieht, kommt man recht schnell darauf. Das müsse so aussehen:

Code: Alles auswählen

/usr/bin/mail -r sender@mail.xyz
Gruß Ole
AbuseIPDB

Benutzeravatar
MrNicNac
Beiträge: 7
Registriert: 25.07.2021 15:38:01

Re: msmtp - "From:" Header in jeder Mail ändern

Beitrag von MrNicNac » 01.09.2021 15:57:38

shoening hat geschrieben: ↑ zum Beitrag ↑
01.09.2021 09:18:28
Mir ist allerdings bei der beschriebenen Konnstellation nicht klar, wie durch aufruf von "mail" dann "msmtp" ins Spiel kommt.
"mail" versendet die Mail im Hintergrund einfach via msmtp. Dafür sorgt das Debianmsmtp-mta
oln hat geschrieben: ↑ zum Beitrag ↑
01.09.2021 11:11:48
eigentlich steht dort alles. Wenn man mal die Hilfe zu mail ansieht, kommt man recht schnell darauf. Das müsse so aussehen:

Code: Alles auswählen

/usr/bin/mail -r sender@mail.xyz
Ich möchte nicht die Absenderadresse ändern, sondern nur den Namen.
Eine falsche Absenderadresse lässt mein Provider nicht zu und würde mir auch nichts bringen.

Code: Alles auswählen

-r "SENDER NAME <sender@mail.xyz>"
Funktioniert von der Kommandozeile, aber nicht wenn ich es in die .mailrc schreibe.

Benutzeravatar
shoening
Beiträge: 897
Registriert: 28.01.2005 21:05:59
Lizenz eigener Beiträge: MIT Lizenz

Re: msmtp - "From:" Header in jeder Mail ändern

Beitrag von shoening » 01.09.2021 17:12:37

Hallo,

möglicherweise übersehe ich da gerade etwas.

Das Paket Debianmsmtp habe ich sowieso installiert - da ist kein /usr/bin/mail enthalten.
Ich habe mir auch mal kurz msmtp-mta installiert. Da ist auch kein Programm /usr/bin/mail enthalten.
Das wird mir auch von dpkg -L msmtp msmtp-mta bestätigt.

Daher noch einmal die Frage: woher stammt das Programm /usr/bin/mail - und wieso soll sich eine Konfiguration für msmtp darauf auswirken?

Viele Grüße
Stefan
Bürokratie kann man nur durch ihre Anwendung bekämpfen.

Benutzeravatar
MrNicNac
Beiträge: 7
Registriert: 25.07.2021 15:38:01

Re: msmtp - "From:" Header in jeder Mail ändern

Beitrag von MrNicNac » 01.09.2021 18:55:04

Sorry, dann habe ich dich wohl falsch verstanden.
Der Befehl "mail" wird vom Paket Debianbsd-mailx bereitgestellt. (Oder alternativ Debianmailutils).

Antworten