Das SMTP Protokoll zum E-Mail Versand
Der Versand von E-Mails
Möchtest du eine E-Mail versenden, so müssen einige Informationen zwischen dir und dem Server ausgetauscht werden. In Abschnitt 1 haben wir bereits eine erste Sammlung an Informationen vorgenommen, die Bob benötigt, um seine Einladungen per E-Mail zu versenden.
Betrachten wir den E-Mail-Versand nun von Seiten des Servers aus, so benötigen wir vor allem zwei Informationen: Den Absender der E-Mail sowie dessen Empfänger. Der Inhalt der E-Mail mit Betreff sowie eigentlichem Text ist dabei für das Zustellen der E-Mail nicht relevant und sollte vom E-Mail-Server nicht ausgewertet werden.
Hierzu kann man sich erneut einen analogen Brief vorstellen. So benötigt die Post für eine Zustellung nur die Adresse des Empfängers, wobei er ebenfalls eine Absenderadresse besitzen sollte. Der Inhalt hingehen ist sogar gesetzlich in Form des Briefgeheimnisses geschützt und darf nur vom Empfänger gelesen werden.
Das SMTP Protokoll
Bereits in den Anfängen des E-Mail-Versandes zeigte sich, dass die Kommunikation zwischen E-Mail-Client und E-Mail-Server einem einheitlichen Protokoll folgen sollte. So gab es anfangs mehrere unterschiedliche Protokolle zum Nachrichtenaustausch, was dazu führte, dass E-Mails jeweils nur über bestimmte Server und an bestimmte Empfänger versandt werden konnten.
Um E-Mails im Internet zu versenden, wird heutzutage primär das SMTP Protokoll genutzt. Dabei steht SMTP für „simple mail transfer protocol“, was sich etwa mit „einfaches E-Mail-Transportprotokoll“ übersetzen lässt. Es wurde 1982 von Jon Postel entworfen und veröffentlicht.
Der folgende Text zeigt die Kommunikation zwischen dem E-Mail-Client von Carol und dem E-Mail-Server, als sie Bob ihr Kommen zu seiner Gartenparty bestätigt. Dabei entspricht jeder Abschnitt, der mit << beginnt einer Nachricht, welche von Carol's E-Mail-Client versandt wurde. Ein mit >> beginnender Abschnitt beschreibt die jeweilige Antwort des E-Mail-Servers (example.com).
Verbindung hergestellt >>220 Willkommen bei example.com <<HELO carol >>250 Hello carol <<MAIL FROM:<carol@example.com> >>250 Sender OK <<RCPT TO:<bob@example.com> >>250 Recipient OK <<DATA >>354 End data with <CR><LF>.<CR><LF> <<Subject: Einladung zur Gartenparty Hallo Bob, gerne komme ich zu deiner Gartenparty und bringe einen Nachtisch mit! Viele Grüße, Carol . >>250 Mail queued for delivery <<QUIT >>221 Server beendet Verbindung. Socket zu 172.16.1.1:25 getrennt
Aufgabe 1
Kannst du die wichtigen Informationen, welche du in Abschnitt 1 bei der Einladung identifiziert hast, auch in diesem Protokollmitschnitt finden?
Aufgabe 2
Erstelle eine Liste mit allen Befehlen, die von dem E-Mail-Programm im Laufe der Kommunikation verwendet wurden. Kannst du die Bedeutung jedes Befehls erkennen? Kannst du eine allgemeine Form des Befehls ableiten?
Versenden einer E-Mail mit Hilfe von SMTP
Nachdem Carol eine Zusage an Bob versendet hat, möchte sie Alice fragen, ob sie ebenfalls zu der Gartenparty eingeladen ist und was sie mitbringt.
Aufgabe 3
Sende mithilfe des SMTP Protokolls eine E-Mail von Carol an Alice.
Um dich mit dem E-Mail-Server zu verbinden und per SMTP mit diesem zu kommunizieren, kannst du den „einfachen Client“ verwenden, welcher auf dem PC von Carol installiert ist. Starte dazu zuerst das in Abschnitt 2 vorgestellte Filius-Netzwerk und öffne den Desktop von Carol. Nun kannst du durch Klicken auf das Icon des „einfachen Clients“ diesen starten.
Um dich mit dem E-Mail-Server zu verbinden, benötigst du nun zwei Informationen: Die Server-Adresse sowie den Server-Port.
Da die E-Mail-Adressen in diesem Beispiel alle von dem Server „example.com“ stammen, ist dies immer unsere Server-Adresse. Der Server-Port ist abhängig von dem verwendeten Protokoll. Da wir SMTP verwenden möchten, geben wir hier den Port 25 ein.
Hast du sowohl die Server-Adresse als auch den Server-Port eingegeben, kannst du mit Hilfe des „Verbinden“-Knopfs die Verbindung starten. Im unteren Ausgabebereich des Programms solltest du nun „Verbindung hergestellt“ sowie die Willkommensnachricht des Servers sehen.
Ist die Verbindung aufgebaut, kannst du im Nachrichtenfeld deine SMTP-Befehle eingeben. Drücke dabei nach jedem Befehl auf „Senden“, um ihn an den Server zu senden und beobachte die Antworten im Ausgabebereich!
Dass der Versand deiner E-Mail erfolgreich war, erkennst du daran, dass der Server nach Ende der Daten mit der Nachricht „250 Mail queued for delivery“ antwortet.
Quellen
- [1]: Der einfache Client von Filius - Urheber: SK - Lizenz: inf-schule.de
- [2]: Gestartete SMTP Verbindung im einfachen Client von Filius - Urheber: SK - Lizenz: inf-schule.de