stefankittel

SMTP Relay gesucht

Hallo,

ein Kunde von mir nutzt Exchange-Postfächer von Busymouse (Dogado).
Der Kunde benötigt hin und wieder das SMTP-Log wenn irgendwo eine Mail mal nicht angekommen ist.
(Lange Geschichte).

Ich schreibe den Support an und in den nächsten 1-48 Stunden erhalten ich dann den Auszug.

Ich kann bei Busymouse einen SMTP-Smarthost eintragen.
Ubuntu + Postfix = mail.log

Aber: Wenn der User jetzt eine Zustellbestätigung in Outlook aktiviert hat, bekommt er diese bei der Übergabe an den Smarthost. Auch wenn dieser die Mail gar nicht zustellen kann.

Kennt Jemand einen SMTP-Proxy oder -Relay, der
a.Die eingehende Verbindung erst bestätigt wenn er selber die Mail zugestellt hat
b. Als Ziel DNS MX verwendet

Es gibt smtpprox und Co, aber die benötigen ein fixes Ziel.

Stefan
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 672613

Url: https://administrator.de/forum/smtp-relay-gesucht-672613.html

Ausgedruckt am: 12.05.2025 um 02:05 Uhr

MirkoKR
MirkoKR 24.04.2025 aktualisiert um 22:29:52 Uhr
Goto Top
Hi.

Eine Zustellbestätigung ist nach wie vor eine Option beider Seiten.

Wenn der Empfänger das nicht unterstützt oder deaktiviert hat, gibts halt keine ...

Du kannst versandte Datenpakete (hier:Mail) im Internet nicht zuverlässig versenden! Der Empfänger kann das Paket annehmen oder verweigern ohne Rückmeldung.

Nicht zu verwechseln mit TCP!
Spirit-of-Eli
Spirit-of-Eli 24.04.2025 um 22:32:07 Uhr
Goto Top
Zitat von @MirkoKR:

Hi.

Eine Zustellbestätigung ist nach wie vor eine Option beider Seiten.

Wenn der Empfänger das nicht unterstützt oder deaktiviert hat, gibts halt keine ...

Du kannst versandte Datenpakete (hier:Mail) im Internet nicht zuverlässig versenden! Der Empfänger kann das Paket annehmen oder verweigern ohne Rückmeldung.

Nicht zu verwechseln mit TCP!

Für mich ist die Antwort ein bisschen an der Frage vorbei.

Das Problem ist ja eine Bestätigung durch ein Relay zu bekommen, ohne das das Relay selbst darauf reagiert.
MirkoKR
MirkoKR 24.04.2025 aktualisiert um 22:39:08 Uhr
Goto Top
Zitat von @Spirit-of-Eli:

Zitat von @MirkoKR:

Hi.

Eine Zustellbestätigung ist nach wie vor eine Option beider Seiten.

Wenn der Empfänger das nicht unterstützt oder deaktiviert hat, gibts halt keine ...

Du kannst versandte Datenpakete (hier:Mail) im Internet nicht zuverlässig versenden! Der Empfänger kann das Paket annehmen oder verweigern ohne Rückmeldung.

Nicht zu verwechseln mit TCP!

Für mich ist die Antwort ein bisschen an der Frage vorbei.

Das Problem ist ja eine Bestätigung durch ein Relay zu bekommen, ohne das das Relay selbst darauf reagiert.

Sehr ich anders, weil

Aber: Wenn der User jetzt eine Zustellbestätigung in Outlook aktiviert hat, bekommt er diese bei der Übergabe an den Smarthost.

wohl erhofft wird, das ein Proxy mehr liefert, was nicht sein wird, wenn Empfänger das nicht kann/will
MirkoKR
MirkoKR 24.04.2025 um 22:49:37 Uhr
Goto Top
Es scheint hier ja um die Frage rechtlich nachweisbarer Zustellung zu gehen 🤔

Ein Kontakt zum Ziel-Mail-Server mag so oder so nachweisbar zu sein....

... ohne eine Empfangsbestätigung ist der Empfang nicht garantiert!

Der Empfang gilt nach jüngsten Gerichts-Urteilen auch von automatischen Antworten - nicht Protokoll-Bestätigungen! - als bwstätigt!

Dennoch sollte man explizit z.B. Kündigungsbestätigungen [per Post] einfordern!
Dani
Dani 24.04.2025 um 23:46:22 Uhr
Goto Top
Moin,
Auch wenn dieser die Mail gar nicht zustellen kann.
in dem Fall wird doch ein NDR generiert. Wo landet der denn?


Gruß,
Dani
StefanKittel
StefanKittel 25.04.2025 aktualisiert um 00:23:09 Uhr
Goto Top
Hallo,

nicht so kompliziert.
Der User schickt in Outlook eine Mail und aktiviert die Lese- und Zustellbestätigung.
Der Exchange-Server, oder allgemeiner der Mail-Server, sendet die Email mittels SMTP zum Smarthost/Relay.
Da für den Mail-Server der Vorgang damit abgeschlossen ist, sender er die Zustellbestätigung an den User.
Dies geht in diesem Fall von falschen Daten aus, weil DAUs solche Mails eh nicht lesen und denken, die Mail wäre beim Empfänger zugestellt.

Wenn der Mail-Serevr des Empfängers nun den Empfang verzögert, z.B. mit Graylisting, dann entsteht verwirrung wenn der User und der Empfänger zu klären versuchen wo die Mail nun ist.

Deswegen ein Relay.
Also kein Store and Forward sondern eher ein Streaming.
Die Rückmeldung an den eigenen Mail-Server gibt es erst wenn der Mail-Server des Empfänger die Mail angekommen hat.

Ich überlege aber diesen Sonderfall schlicht zu ignorieren weil es einfacher ist.

Oder sehe ich das falsch und Mail-Server sind schlauer?

Stefan
mbehrens
mbehrens 25.04.2025 um 00:59:23 Uhr
Goto Top
Zitat von @StefanKittel:

Deswegen ein Relay.
Also kein Store and Forward sondern eher ein Streaming.

Ein Relay ist doch ein Store and Forward System.

Die Rückmeldung an den eigenen Mail-Server gibt es erst wenn der Mail-Server des Empfänger die Mail angekommen hat.

Deaktiviere auf dem Postfix System DSN Nachrichten.
Spirit-of-Eli
Spirit-of-Eli 25.04.2025 um 07:07:22 Uhr
Goto Top
Zitat von @mbehrens:

Deaktiviere auf dem Postfix System DSN Nachrichten.

Guter Punkt, dann dürfte wieder das Zielsystem anworten.
LordGurke
Lösung LordGurke 25.04.2025 um 08:48:21 Uhr
Goto Top
Nein, DSN ist transitiv bis es nicht mehr weiter geht. Wenn auf dem Postfix DSN deaktiviert wird, antwortet nur noch das System, was an den Postfix übergibt.
StefanKittel
StefanKittel 25.04.2025 um 09:41:30 Uhr
Goto Top
Moin,
der Exchange erzeugt die DSN sobald er ein 250 in der SMTP-Verbindung erhalten hat.
Bei einem Smarthost ist das aber nicht der DSN für die Übergabe an das Zielsystem.

Jetzt könnte der Smarthost natürlich auch ein 2. DSN erzeugen.

Aber mir geht es ja gerade um den Fall, dass der Smarthost die Mail nicht sofort zustellen kann.
Sei es wegen Graylisting oder einem timeout zum Zielsystem.

Der User hat sein DSN und ruft den Empfänger an weil er davon ausgehen muss, dass die Mail dort angekommen ist.
Dort ist die Mail nicht da, weil der Proxy die Mail verschlampt hat (Bug). Nun versuchen die beiden unter falschen Vorraussetzungen rauszufinden wo die Mail hin ist.

Stefan
Dani
Lösung Dani 25.04.2025 um 10:09:15 Uhr
Goto Top
Moin,
Die Rückmeldung an den eigenen Mail-Server gibt es erst wenn der Mail-Server des Empfänger die Mail angekommen hat.
und woher weißt du, wie die Infrastruktur des Empfänger aussieht? Ich nehme gerne meinen AG als Beispiel. Unser Eingangstor ist ein SMTP Proxy. Dieser leitet die E-Mails an verschiedene SMTP Relays weiter. Nach 1-2-3 Hops landet die Mail dann auf deinem Exchange Umgebung, wo die Postfächer liegen. D.h. sobald der erste SMTP Relay Server die E-Mail empfangen hat, geht die Info an den Absender raus. Die E-Mail ist dann aber immer noch nicht beim Empfänger im Postfach.

Dort ist die Mail nicht da, weil der Proxy die Mail verschlampt hat (Bug).
Bei einem Proxy dürfte das eigentlich gar nicht passieren. Bei einem Relay hingegen ist das immer möglich.


Gruß,
Dani
StefanKittel
StefanKittel 25.04.2025 aktualisiert um 11:20:21 Uhr
Goto Top
und woher weißt du, wie die Infrastruktur des Empfänger aussieht?
Das ist ja nicht die Frage und nicht mein Problem.

In diesem Fall geht der Nutzer korrekt davon aus, dass die Mail in der IT-Infrastruktur des Empfängers angekommen ist.
Wenn die Mail beim Empfänger nicht ankommt, kann nur die IT des Empfängers die Ursache feststellen.

In meinem False-DSN-Szenarion gehen ja beide davon aus, dass die Mail beim Empfänger angekommen ist.
In Wahrheit aber liegt sie noch auf dem Ausgangs-Proxy und damit wäre die IT des Versenders zuständig.

Alles mit Store-Forward kann zu diesem Problem führen.
Bei einem (Streaming)-Proxy prinzipbedingt nicht. Aber die, die ich gefunden haben, können den Zielserver nicht mittels DNS MX ermitteln sondern benötigen eine fixe IP des Zielsystems.

Stefan
commodity
Lösung commodity 25.04.2025 um 17:44:03 Uhr
Goto Top
Kennt Jemand einen SMTP-Proxy oder -Relay, der
a.Die eingehende Verbindung erst bestätigt wenn er selber die Mail zugestellt hat
Das macht IMO ein Mailrelay nicht, wie der Kollege @mbehrens oben schon schreibt ("store and forward"). Ein Proxy würde das wohl so machen, hat aber nicht die Funktionalität eines Relays.

Das Problem liegt (wieder einmal) in einer nicht zu Ende gedachten Implementierung einer eigentlich guten Idee durch Microsoft. Die Zustellbestätigung bestätigt ja nie die Zustellung, sondern nur die Übergabe an das Empfangssystem durch Reaktion auf die Meldung 250 des nächsten Servers. Bei einem simplen Versandaufbau signalisiert das dann, dass die Nachricht von Zielsystem übernommen wurde (und erfüllt immerhin diesen Zweck - aber keinerlei Rechtsverbindlichkeit). Sobald der Aufbau aber komplexer wird, wie hier mit Mail-Relay, ist diese Herangehensweise halt zu simpel und das über DSNs umzusetzen bietet Microsoft nicht an.

Ich kenne den Hoster nicht, aber bessere Hoster bieten heute an sich direkten Zugriff auf die Mail-Logs an, z.B. Linevast. Ansonsten kannst Du vielleicht auch die Verwendung des Smarthosts überdenken, je nach Grund, warum Du diesen einsetzt.

Viele Grüße, commodity
StefanKittel
StefanKittel 25.04.2025 um 18:12:27 Uhr
Goto Top
Zitat von @commodity:
Das Problem liegt (wieder einmal) in einer nicht zu Ende gedachten Implementierung einer eigentlich guten Idee durch Microsoft
Ja, es ist zu kurz gedacht.
Die Meldung an den User besagt dies ja auch eindeutig, aber das liest halt keiner.

Ich kenne den Hoster nicht, aber bessere Hoster bieten heute an sich direkten Zugriff auf die Mail-Logs an, z.B. Linevast.
Nein, nur über eine Support-Anfrage.

Ansonsten kannst Du vielleicht auch die Verwendung des Smarthosts überdenken
Das ist ja die Planung. Aber wenn ich das mit meinem Standard-Postfix-Smarthost-Setup mache bekommt der User die DSN bei der Übergabe an meinen Server. Und hier schaue ich ob es eine bessere Möglichkeit gibt.

je nach Grund, warum Du diesen einsetzt.
Ich möchte einn SMTP Log über Übergabe an das Zielsystem haben mit der ID die darin genannt wird.

Mein Kunde hat mit einige große Firmen zu tun die bei M365 sind.
Wenn dort eine Mail ankommt gilt immer, dass mein Kunden beweisen muss, dass das Problem bei denen liegt. Sonst prüfen die den Fall gar nicht.
Du weist doch: Große Firme + O365 = Keine Fehlfunktion möglich

Technisch ist es einfach:
  • TCP Verbindung annehmen
  • SMTP Envelop-To auswerten
  • Mittels DNS einen MX ermitteln
  • TCP Verbindung herstellen
  • Streaming aktivieren

Stefan
commodity
Lösung commodity 25.04.2025 um 18:59:58 Uhr
Goto Top
Ah, verstehe, das Relay soll das Logging vorziehen face-smile Dann kannst Du natürlich nicht darauf verzichten. Ich fürchte, da wirst Du nicht fündig werden. Ich habe mal ChatGPT angeworfen (wie Du wahrscheinlich auch). Da gibt es nur sehr komplexe Ansätze - oder eben einen Proxy. Wenn der Relay-Server nur dem Logging-Zweck dient, solltest Du in Richtung Proxy denken. Dann sollte das klappen, was Du erreichen möchtest. Du bekommst eine korrekte Zustellmeldung und hast zugleich ein Log darüber.

Habe ich noch nie eingesetzt, aber schau Dir mal haraka an, ChatGPT erklärt Dir bei Bedarf die Konfiguration. face-smile

Viele Grüße, commodity
Dani
Lösung Dani 25.04.2025 aktualisiert um 20:16:52 Uhr
Goto Top
Moin,
Da gibt es nur sehr komplexe Ansätze - oder eben einen Proxy.
Danke für die Bestätigung.

Habe ich noch nie eingesetzt, aber schau Dir mal haraka an, ChatGPT erklärt Dir bei Bedarf die Konfiguration. face-smile
auch da hast du die Herausforderung, dass du beim Plugin SMTP Proxy ein Hostnamen angeben musst und nicht auf DNS zurückgreifen kannst, um an die MX Einträge zu kommen.

Kommerzielle Produkte, die das können sind meines Wissens nach NoSpamProxy und Proofpoint.


Gruß,
Dani
StefanKittel
StefanKittel 25.04.2025 um 20:31:25 Uhr
Goto Top
Zitat von @Dani:
Kommerzielle Produkte, die das können sind meines Wissens nach NoSpamProxy und Proofpoint.
Und das führt dann auch auch wieder zu einer großen Umstellung dafür dass ich 1-2 mal pro Wochen wissen möchte ob eine Mail irgendwo angekommen ist.

Btw. Es ist ja nicht "mein" Problem. Ich versuche nur ein Problem meines Kunden zu lösen.
Ich werden einen normalen Smarthost empfehlen.

Danke alle Alle fürs mitdenken.

Stefan
ThePinky777
ThePinky777 28.04.2025 aktualisiert um 18:07:06 Uhr
Goto Top
also postfix schreibt ein log, und beim smtp übergeben sollte hier defintiv hinterlegt sein wie der status ist.
zumindest ist das 100% gegeben wenn man nach extern mails verschickt mit postfix, warum sich das beim relay unterscheiden soll, fände ich zumindest komisch wenns nicht so ist.
Wir nutzen den Postfix Server um Emails zu versenden die per powershell generiert und an den postfix geschickt wurden, also eigentlich als realy, nach extern halt.

ich hab damals das log periodisch auf ein SMB Sahre rauskopiert (Windows Server) und per VBS Script zerlegt und anschliessend in eine SQL Datenbank geschrieben. Darin konnte man dann exakt nachzählen wie viele emails angekommen sind.

Bei uns war das eine Abrechnungsfrage da jede email abgerechnet wurde und der empfang gesichert sein musste.

Und beim relay sollte im log auch drin stehen der status der übergabe also SMTP Status.

Aber da ichs praktisch noch nicht probiert habe, relay nach intern, muss man es halt einfach mal testen face-smile