SMTP – Simple Mail Transfer Protocol: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| Zeile 1: | Zeile 1: | ||
| − | + | {{Box|title=SMTP – Simple Mail Transfer Protocol | |
| + | |content= | ||
| + | ==== Einführung in SMTP ==== | ||
| + | Das '''Simple Mail Transfer Protocol (SMTP)''' ist das Standardprotokoll für den Versand und die Weiterleitung von E-Mails. Es definiert, wie E-Mails zwischen Mailservern übertragen werden. SMTP basiert auf einer Client-Server-Architektur und nutzt standardmäßig: | ||
| − | + | * Port 25 für die Server-zu-Server-Kommunikation | |
| + | * Port 587 für authentifizierte Clients | ||
| + | * Port 465 für verschlüsselte SMTP-Verbindungen (veraltet, aber noch in Gebrauch) | ||
| + | ==== Aufbau einer E-Mail ==== | ||
Eine E-Mail besteht aus zwei Hauptbestandteilen: | Eine E-Mail besteht aus zwei Hauptbestandteilen: | ||
| − | ; | + | ; '''Envelope (Umschlag)''' |
| − | : | + | : Enthält die Adressen des Absenders und des Empfängers, die für die SMTP-Zustellung verwendet werden. Diese Informationen sind nicht im Header sichtbar. |
| − | ; | + | ; '''Header (Kopfzeilen)''' |
| − | : Enthält Metadaten zur | + | : Enthält Metadaten zur E-Mail. Wichtige Felder sind: |
| − | + | : '''From:''' Absenderadresse | |
| − | + | : '''To:''' Empfängeradresse | |
| − | + | : '''Cc:''' Kopieempfänger (Carbon Copy) | |
| − | + | : '''Bcc:''' Verdeckte Kopieempfänger (Blind Carbon Copy) | |
| − | + | : '''Subject:''' Betreff der Nachricht | |
| − | + | : '''Date:''' Zeitpunkt des Versands | |
| − | + | : '''Message-ID:''' Eindeutige Kennung der Nachricht | |
| − | + | : '''Reply-To:''' Adresse für Antworten | |
| − | + | : '''Received:''' Routing-Informationen über die Mailserver, die die E-Mail verarbeitet haben | |
| + | : '''MIME-Version:''' Gibt an, ob die E-Mail Multipart-Inhalte oder Anhänge enthält | ||
| + | : '''Content-Type:''' Definiert das Format der Nachricht, z. B. Text oder HTML | ||
| − | ; | + | ; '''Body (Nachrichtentext)''' |
| − | : Der eigentliche Inhalt der E-Mail. | + | : Der eigentliche Inhalt der E-Mail. Er kann reinen Text oder HTML enthalten. Anhänge werden über MIME (Multipurpose Internet Mail Extensions) codiert. |
| − | ==== Beispiel einer E-Mail ==== | + | ==== Beispiel einer E-Mail ==== |
| + | Ein vollständiges Beispiel einer SMTP-E-Mail mit Header und Body: | ||
| − | <pre> | + | <pre> |
| − | From: alice@example.com | + | From: alice@example.com |
| − | To: bob@example.com | + | To: bob@example.com |
| − | Cc: charlie@example.com | + | Cc: charlie@example.com |
| − | Bcc: dave@example.com | + | Bcc: dave@example.com |
| − | Subject: Testmail | + | Subject: Testmail |
| − | Date: Tue, 12 Mar 2024 10:00:00 +0100 | + | Date: Tue, 12 Mar 2024 10:00:00 +0100 |
| − | Message-ID: <123456@example.com> | + | Message-ID: <123456@example.com> |
| − | MIME-Version: 1.0 | + | MIME-Version: 1.0 |
| − | Content-Type: text/plain; charset="UTF-8" | + | Content-Type: text/plain; charset="UTF-8" |
| − | Hallo Bob, | + | Hallo Bob, |
| − | dies ist eine Testmail mit CC und BCC. | + | dies ist eine Testmail mit CC und BCC. |
| − | Grüße | + | Grüße |
| − | Alice | + | Alice |
</pre> | </pre> | ||
| − | ==== SMTP-Agenten ==== | + | ==== SMTP-Agenten ==== |
| + | Bei der Verarbeitung einer E-Mail sind mehrere Komponenten beteiligt: | ||
| − | ; | + | ; '''MTA (Mail Transfer Agent)''' |
| − | : | + | : Nimmt E-Mails entgegen, speichert sie und leitet sie weiter. |
| − | ; | + | ; '''MDA (Mail Delivery Agent)''' |
| − | : | + | : Zuständig für die Ablage der E-Mail im Postfach des Empfängers. |
| − | ; | + | ; '''MUA (Mail User Agent)''' |
| − | : | + | : Das E-Mail-Programm oder Webmail-Interface des Benutzers zum Senden und Empfangen von E-Mails. |
| − | ; | + | ; '''MSA (Mail Submission Agent)''' |
| − | : | + | : Nimmt E-Mails von einem MUA entgegen und übergibt sie an den MTA zur Weiterleitung. |
| − | ==== Ablauf einer SMTP-Kommunikation ==== | + | ==== Ablauf einer SMTP-Kommunikation ==== |
| + | Die SMTP-Kommunikation erfolgt in mehreren Schritten: | ||
| − | + | # Der sendende Server öffnet eine TCP-Verbindung zum empfangenden Server auf Port 25 oder 587. | |
| − | + | # Der Server begrüßt sich mit `HELO` oder `EHLO`. | |
| − | + | # Der Absender (`MAIL FROM`) und Empfänger (`RCPT TO`) werden angegeben. | |
| + | # Die Nachricht wird mit `DATA` gesendet, gefolgt von einem Punkt (`.`) zur Beendigung. | ||
| + | # Der Server bestätigt die Annahme mit `250 OK`. | ||
| + | # Die Verbindung wird mit `QUIT` beendet. | ||
| − | + | ==== Beispiel einer SMTP-Sitzung ==== | |
| − | + | Hier ein Beispiel für eine SMTP-Interaktion zwischen zwei Servern: | |
| − | |||
| − | + | <pre> | |
| − | + | 220 mail.example.com ESMTP | |
| − | + | EHLO sender.example.com | |
| − | + | 250-mail.example.com | |
| + | 250-SIZE 10485760 | ||
| + | 250-STARTTLS | ||
| + | 250 AUTH PLAIN LOGIN | ||
| + | MAIL FROM:<alice@example.com> | ||
| + | 250 OK | ||
| + | RCPT TO:<bob@example.com> | ||
| + | 250 OK | ||
| + | DATA | ||
| + | 354 End data with <CR><LF>.<CR><LF> | ||
| + | From: alice@example.com | ||
| + | To: bob@example.com | ||
| + | Subject: Test | ||
| − | + | Dies ist eine SMTP-Testnachricht. | |
| − | |||
| − | |||
| − | + | . | |
| + | 250 OK: queued as 12345 | ||
| + | QUIT | ||
| + | 221 Bye | ||
| + | </pre> | ||
| − | + | ==== Erweiterungen von SMTP ==== | |
| − | + | SMTP kann durch verschiedene Erweiterungen ergänzt werden: | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | + | ; '''STARTTLS''' | |
| + | : Ermöglicht die Verschlüsselung der Verbindung mit TLS. | ||
| − | + | ; '''SMTP AUTH''' | |
| − | + | : Authentifiziert den Absender mit Benutzername und Passwort. | |
| − | |||
| − | |||
| − | |||
| − | + | ; '''DSN (Delivery Status Notification)''' | |
| + | : Ermöglicht die Rückmeldung über den Zustellstatus der E-Mail. | ||
| − | + | ; '''PIPELINING''' | |
| − | + | : Erlaubt das Senden mehrerer Befehle in einer Übertragung, um die Effizienz zu steigern. | |
| − | |||
| − | |||
| − | ==== Fazit ==== | + | ==== Fazit ==== |
| − | SMTP | + | SMTP ist das zentrale Protokoll für den E-Mail-Versand. Es definiert, wie E-Mails weitergeleitet werden und welche Komponenten an der Verarbeitung beteiligt sind. Durch Erweiterungen wie STARTTLS und SMTP AUTH kann die Sicherheit erhöht werden. |
| + | }} | ||