SMTP – Simple Mail Transfer Protocol: Unterschied zwischen den Versionen
(Die Seite wurde neu angelegt: „=== SMTP – Simple Mail Transfer Protocol === ==== Aufbau einer E-Mail ==== Eine E-Mail besteht aus zwei Hauptbestandteilen: - **Envelope (Umschlag)**…“) |
|||
| (7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| − | === SMTP | + | ====Einführung in SMTP==== |
| − | ==== Aufbau einer E-Mail ==== | + | Das '''Simple Mail Transfer Protocol (SMTP)''' ist das Standardprotokoll für den Versand und die Weiterleitung von E-Mails. Es regelt, wie E-Mails zwischen Mailservern übertragen werden und welche Ports für die Kommunikation genutzt werden. |
| + | |||
| + | ; '''Port 25''' | ||
| + | : Wird für die Server-zu-Server-Kommunikation (MTA-zu-MTA) genutzt, meist mit optionalem STARTTLS. | ||
| + | : Achtung: Viele Provider blockieren ausgehenden Traffic auf Port 25, um Spam zu verhindern. | ||
| + | |||
| + | ; '''Port 465''' | ||
| + | : Wird für Mail-Submission genutzt, **mit erzwungener TLS-Verschlüsselung (Implicit TLS)**. | ||
| + | : Diese Methode wird vom BSI empfohlen, da sie nicht durch Downgrade-Angriffe manipuliert werden kann. | ||
| + | |||
| + | ; '''Port 587''' | ||
| + | : Wird für Mail-Submission genutzt, aber mit **STARTTLS** (opportunistische Verschlüsselung). | ||
| + | : Das BSI rät von STARTTLS ab, da es durch Man-in-the-Middle-Angriffe entfernt werden kann. | ||
| + | |||
| + | '''Hinweis:''' | ||
| + | Das **BSI empfiehlt ausdrücklich Port 465 für Mail-Submission**, da hier eine direkte TLS-Verbindung erzwungen wird. | ||
| + | Port 25 bleibt für den Transport zwischen Mailservern (MTA-zu-MTA), ist aber für Clients ungeeignet. | ||
| + | |||
| + | |||
| + | Das '''Simple Mail Transfer Protocol (SMTP)''' ist das Standardprotokoll für den Versand und die Weiterleitung von E-Mails. Es regelt, wie E-Mails zwischen Mailservern übertragen werden und welche Ports für die Kommunikation genutzt werden. | ||
| + | |||
| + | ; '''Port 25''' | ||
| + | : Wird für die Server-zu-Server-Kommunikation (MTA-zu-MTA) genutzt, meist mit optionalem STARTTLS. | ||
| + | : Achtung: Viele Provider blockieren ausgehenden Traffic auf Port 25, um Spam zu verhindern. | ||
| + | |||
| + | ; '''Port 465''' | ||
| + | : Wird für Mail-Submission genutzt, **mit erzwungener TLS-Verschlüsselung (Implicit TLS)**. | ||
| + | : Diese Methode wird vom BSI empfohlen, da sie nicht durch Downgrade-Angriffe manipuliert werden kann. | ||
| + | |||
| + | ; '''Port 587''' | ||
| + | : Wird für Mail-Submission genutzt, aber mit **STARTTLS** (opportunistische Verschlüsselung). | ||
| + | : Das BSI rät von STARTTLS ab, da es durch Man-in-the-Middle-Angriffe entfernt werden kann. | ||
| + | |||
| + | '''Hinweis:''' | ||
| + | Das **BSI empfiehlt ausdrücklich Port 465 für Mail-Submission**, da hier eine direkte TLS-Verbindung erzwungen wird. | ||
| + | Port 25 bleibt für den Transport zwischen Mailservern (MTA-zu-MTA), ist aber für Clients ungeeignet. | ||
| + | }} | ||
| + | |||
| + | ==== 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 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. Er kann reinen Text oder HTML enthalten. Anhänge werden über MIME (Multipurpose Internet Mail Extensions) codiert. | ||
| + | |||
| + | ==== Beispiel einer E-Mail ==== | ||
| + | Ein vollständiges Beispiel einer SMTP-E-Mail mit Header und Body: | ||
| + | |||
| + | <pre> | ||
| + | From: alice@example.com | ||
| + | To: bob@example.com | ||
| + | Cc: charlie@example.com | ||
| + | Bcc: dave@example.com | ||
| + | Subject: Testmail | ||
| + | Date: Tue, 12 Mar 2024 10:00:00 +0100 | ||
| + | Message-ID: <123456@example.com> | ||
| + | MIME-Version: 1.0 | ||
| + | Content-Type: text/plain; charset="UTF-8" | ||
| + | |||
| + | Hallo Bob, | ||
| + | |||
| + | dies ist eine Testmail mit CC und BCC. | ||
| + | |||
| + | Grüße | ||
| + | Alice | ||
| + | </pre> | ||
| + | |||
| + | ==== 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 ==== |
| − | + | 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 ist das zentrale Protokoll für den E-Mail-Versand. Es | + | 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. |
| + | }} | ||
Aktuelle Version vom 11. März 2025, 21:33 Uhr
Einführung in SMTP
Das Simple Mail Transfer Protocol (SMTP) ist das Standardprotokoll für den Versand und die Weiterleitung von E-Mails. Es regelt, wie E-Mails zwischen Mailservern übertragen werden und welche Ports für die Kommunikation genutzt werden.
- Port 25
- Wird für die Server-zu-Server-Kommunikation (MTA-zu-MTA) genutzt, meist mit optionalem STARTTLS.
- Achtung: Viele Provider blockieren ausgehenden Traffic auf Port 25, um Spam zu verhindern.
- Port 465
- Wird für Mail-Submission genutzt, **mit erzwungener TLS-Verschlüsselung (Implicit TLS)**.
- Diese Methode wird vom BSI empfohlen, da sie nicht durch Downgrade-Angriffe manipuliert werden kann.
- Port 587
- Wird für Mail-Submission genutzt, aber mit **STARTTLS** (opportunistische Verschlüsselung).
- Das BSI rät von STARTTLS ab, da es durch Man-in-the-Middle-Angriffe entfernt werden kann.
Hinweis: Das **BSI empfiehlt ausdrücklich Port 465 für Mail-Submission**, da hier eine direkte TLS-Verbindung erzwungen wird. Port 25 bleibt für den Transport zwischen Mailservern (MTA-zu-MTA), ist aber für Clients ungeeignet.
Das Simple Mail Transfer Protocol (SMTP) ist das Standardprotokoll für den Versand und die Weiterleitung von E-Mails. Es regelt, wie E-Mails zwischen Mailservern übertragen werden und welche Ports für die Kommunikation genutzt werden.
- Port 25
- Wird für die Server-zu-Server-Kommunikation (MTA-zu-MTA) genutzt, meist mit optionalem STARTTLS.
- Achtung: Viele Provider blockieren ausgehenden Traffic auf Port 25, um Spam zu verhindern.
- Port 465
- Wird für Mail-Submission genutzt, **mit erzwungener TLS-Verschlüsselung (Implicit TLS)**.
- Diese Methode wird vom BSI empfohlen, da sie nicht durch Downgrade-Angriffe manipuliert werden kann.
- Port 587
- Wird für Mail-Submission genutzt, aber mit **STARTTLS** (opportunistische Verschlüsselung).
- Das BSI rät von STARTTLS ab, da es durch Man-in-the-Middle-Angriffe entfernt werden kann.
Hinweis: Das **BSI empfiehlt ausdrücklich Port 465 für Mail-Submission**, da hier eine direkte TLS-Verbindung erzwungen wird. Port 25 bleibt für den Transport zwischen Mailservern (MTA-zu-MTA), ist aber für Clients ungeeignet. }}
Aufbau einer E-Mail
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 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. Er kann reinen Text oder HTML enthalten. Anhänge werden über MIME (Multipurpose Internet Mail Extensions) codiert.
Beispiel einer E-Mail
Ein vollständiges Beispiel einer SMTP-E-Mail mit Header und Body:
From: alice@example.com To: bob@example.com Cc: charlie@example.com Bcc: dave@example.com Subject: Testmail Date: Tue, 12 Mar 2024 10:00:00 +0100 Message-ID: <123456@example.com> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Hallo Bob, dies ist eine Testmail mit CC und BCC. Grüße Alice
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
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:
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
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
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. }}