Dennis Dayman schreibt in Teil 1 seiner „Wie funktioniert E-Mail“-Serie (siehe vorangegangener Beitrag):
(…) let’s start with how MTAs communicate. MTAs communicate and have “conversations” similar to human beings. For example, let’s say that you and I meet in a public place. We might shake hands or hug, one person says hi, the other says hi in return, we ask how (…)
Diese Beschreibung trifft es eigentlich sehr gut. Wer möchte, kann ja mal einen Mail-Versand auf Kommunikationsebene, d.h. direkt in der Protokollsprache „Simple Message Transfer Protocol“/SMTP mit Telnet simulieren und so das Zitat nachvollziehen. Keine Bange – der Ausdruck Simple MTP kommt nicht von ungefähr…
Unterhalten wir uns doch exemplarisch – auch wenn er imho nicht der Freundlichste ist – einmal mit dem Mail-Server von Gmx.de und schicken mir eine Testnachricht (jep, dies ist auch als Einladung an die Leser zu verstehen, die z. B. einen Gmx.de-Account besitzen
):
Zunächst stellen wir eine Verbindung zum Gmx-Server auf Port 25 – dem SMTP-Port für E-Mail-Verkehr – her:
telnet mail.gmx.net 25
Wie es sich gehört, beginnt der Dialog mit einem Handshake, einem freundlichen „Hallo“ und einer Vorstellung. In der Mail-Sprache heißt das „Hallo“ HELO beim „Fossil“ SMTP (von 1982 (!), RFC 821) bzw. EHLO beim Extended SMTP (erweitert um Authentifizierung).
EHLO emailmarketingtipps@gmx.de
Der Gmx-Mailserver ist recht misstrauisch und möchte, dass ich mich authentifiziere. Gesagt, getan…
AUTH LOGIN
Um zu zeigen, dass wir es wirklich sind geben wir die Gmx-Email-Adresse und das Passwort ein – allerdings nicht in Klartext sondern Base64-kodiert (enkodieren Sie beispielsweise Ihre Adresse – komplett mit Domain – und Ihr Passwort hier):
ZW1haWxtYXJrZXRpbmd0aXBwc0BnbXguZGU=
… und das Passwort…
[ZENSIERT]
(Vorsicht: Beim Vertipper geht der Spaß von vorne los, da Telnet kein Backspace versteht)
Wenn die Angaben stimmen und der Server uns sein Ok gibt, kann nun der Umschlag („Envelope„) der E-Mail spezifiziert werden (RFC 2821). Dieser besteht zum einen aus dem Umschlag-Absender („Envelope-Sender/-From“). Der Envelope-Sender wird mit Datum & Uhrzeit in der E-Mail dem Header vorangestellt und fungiert z. B. für unzustellbare Nachrichten als Adressat. Zum anderen besteht der Umschlag aus dem (oder den) Empfänger(n) („Envelope-To„). Der Absender auf dem Umschlag wird durch MAIL FROM und die Empfänger jeweils durch RCTP TO angegeben:
MAIL FROM: emailmarketingtipps@gmx.de
RCTP TO: emailmarketingtipps@googlemail.com
Nun folgt durch das Schlüsselwort DATA eingeleitet der Briefbogen, der neben dem Header den Body, also die eigentliche Nachricht enthält. Der Header sollte per RFC 2822-Standard unter anderem den Absender („Header-From„), der sich vom Envelope-From unterschieden kann und für die Zustellung der E-Mail bedeutungslos ist, den Empfänger („Header-To„) und den Betreff („Subject„) enthalten. Wir begnügen uns mit dem Betreff:
DATA
Subject: Och wat is dat schoeeeen
… und der Body - mit einer Leerzeile vom Header getrennt:
so simpel ist SMTP?!?
Das Ende der Nachricht wird durch einen Punkt übermittelt:
.
… hat’s geklappt…?
… yep.
PS: Wer sich generell für die Herkunft und Analyse der E-Mails in seinem Postfach interessiert, dem kann ich als weiterführenden Artikel den tollen Artikel „E-Mail Header lesen und verstehen“ von Thomas Hochstein sehr empfehlen.





2 Antworten bis hierher ↓
Thunderbird: Phishing-False Positives vermeiden « Email Marketing Tipps // Januar 29, 2009 um 08:43 |
[...] ← Wie funktioniert E-Mail: kleiner SMTP-Praxis-Exkurs (nicht nur für Nerds) :-) Todesfalle Altpapier-Container [...]
Video: Wie Spam-Filter funktionieren… « Email Marketing Tipps // Mai 25, 2009 um 09:14 |
[...] mag, kann ja mal den kleinen SMTP-Praxis-Exkurs aus dem vorangegangenen Artikel durchgehen – das ein oder andere wird dann aus dem Video bekannt vorkommen [...]