Post Office Protocol

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von POP3)
POP3 (Post Office Protocol Version 3)
Familie: Internetprotokollfamilie
Einsatzgebiet: Abholen von E-Mail vom Provider
Port: 110/TCP
995/TCP (Verschlüsselt)
POP3 im TCP/IP-Protokollstapel:
Anwendung POP3
Transport TCP
Internet IP (IPv4, IPv6)
Netzzugang Ethernet Token
Bus
Token
Ring
FDDI
Standards: RFC 1939 (POP3, 1996)

Das Post Office Protocol (POP) ist ein Übertragungsprotokoll, über das ein Client E-Mails von einem E-Mail-Server abholen kann. Version 3 (POP3) wird im RFC 1939 beschrieben. POP3 ist ein ASCII-Protokoll, wobei die Steuerung der Datenübertragung durch Kommandos geschieht, die standardmäßig an den Port 110 geschickt werden.

POP3 ist in der Funktionalität sehr beschränkt und erlaubt nur das Auflisten, Abholen und Löschen von E-Mails am E-Mail-Server. Für weitere Funktionen wie hierarchische Mailboxen direkt am Mailserver, Zugriff auf mehrere Mailboxen während einer Sitzung, Vorselektion der E-Mails usw. müssen Protokolle wie IMAP verwendet werden.

Als Gegenstück zu POP3 ist für das Versenden von E-Mails üblicherweise in Clients und Servern das Simple Mail Transfer Protocol (SMTP) implementiert.

Geschichte

Erstmals wurde das Post Office Protocol im Oktober 1984 in RFC 918 beschrieben. Bereits im Februar 1985 folgte das in RFC 937 beschriebene POP2, bevor POP3 erstmals im November 1988 in RFC 1081 erschien.

POP3 entspricht POP und POP2 in der grundsätzlichen Form. Die Vorgehensweise des Mailabrufs unterscheidet sich vor allem dadurch, dass die Notwendigkeit der Empfangsbereitschaft des Clients wegfällt sowie der korrekte Empfang einer Mail nicht mehr bestätigt zu werden braucht. Die geringere Komplexität und das Vorhandensein von „Übersichtsbefehlen“ wie STAT und LIST gehören zu den Merkmalen von POP3. Auch ist POP3 von Anfang an genauer und ausführlicher beschrieben.

Für POP4 wurde, inklusive funktionierender Serverimplementierung, ein Vorschlag dargelegt. Dieser Vorschlag enthält elementares Verzeichnismanagement, Unterstützung für multi-part messaging sowie Nachrichtenmarkierungen, was ein einfaches Protokoll ermöglicht, um einige populäre IMAP-Funktionen nachzurüsten, die in POP3 fehlen. Seit 2003 konnten aber keine Fortschritte mehr bei der Entwicklung von POP4 beobachtet werden.[1]

POP3-Clients

Das POP3-Protokoll ist in allen verbreiteten E-Mail-Programmen integriert.

POP3-Server

Damit der Mailserver Anfragen per POP3 beantworten kann, muss eine entsprechende POP3-Server-Software installiert sein.

Bei Windows-E-Mail-Servern kann der POP3-Server in das entsprechende E-Mail-Server-Paket (z. B. im Mail-Server von Windows Server 2003 oder bei Server-Software wie beispielsweise Microsoft Exchange oder Lotus Domino) integriert sein. Bei Mercury/32 ist die POP3-Funktionalität als Modul vorhanden. Andere Softwarehersteller können weitere Lösungen vorsehen.

Im Unix-Bereich gibt es u. a. folgende POP3-Server-Software:

Unterschiede zu IMAP

POP3-Verbindungen werden bei Bedarf vom Client aufgebaut und beendet; nach der Anmeldung werden alle E-Mails vom Mailserver heruntergeladen.

Eine Synchronisierung zwischen den Clients findet per POP3 hingegen nicht statt. Wenn eine E-Mail gelöscht oder als „gelesen“ markiert wird, bleibt die Nachricht ungelöscht bzw. ungelesen auf allen anderen Geräten erhalten.

Dadurch unterscheidet sich POP3 von IMAP, das sowohl eine dauerhafte Verbindung zum Server als auch eine Synchronisierung zwischen Clients ermöglicht.

Kommandos

Standardkommandos (auf jedem Server vorhanden):

USER xxx
wählt den Benutzernamen bzw. das Benutzerkonto auf dem E-Mail-Server.
PASS xxx
übergibt das Passwort in Klartext.
STAT
liefert den Status der Mailbox, u. a. die Anzahl aller E-Mails im Postfach und deren Gesamtgröße (in Byte).
LIST n
liefert die Anzahl und die Größe der (n-ten) E-Mail(s).
RETR n
holt die n-te E-Mail vom E-Mail-Server.
DELE n
löscht die n-te E-Mail am E-Mail-Server.
NOOP
keine Funktion, der Server antwortet mit +OK.
RSET
setzt alle DELE-Kommandos zurück.
QUIT
beendet die aktuelle POP3-Sitzung und führt alle DELE-Kommandos durch.

Optionale Kommandos (serverabhängig):

APOP
sichere Anmeldung, s. u.
TOP n x
ruft den Header und die ersten x Zeilen der n-ten Mail ab.
UIDL n
zeigt die eindeutige ID der E-Mail an.

Zum Test von POP3-Verbindungen können die Kommandos mittels eines Telnet-Programms direkt an den Port 110 gesendet und die Antworten des POP3-Servers überprüft werden. (Für dieses Beispiel gibt man unter Windows oder Linux telnet example.com pop3 in der Eingabeaufforderung oder in der Konsole ein. Domain und Port werden durch Leerzeichen und nicht durch Doppelpunkt getrennt.)

Eine typische POP3-Session zwischen Server und Client könnte folgendermaßen aussehen:

Client Server
(wartet auf Verbindungen auf TCP Port 110)
(öffnet Verbindung)
+OK example.com POP3-Server
USER wiki@example.com
+OK Please enter password
PASS passwort_im_klartext
+OK mailbox locked and ready
STAT
+OK 1 236
LIST
+OK mailbox has 1 messages (236 octets)
1 236
.
RETR 1
+OK message follows
Date: Mon, 18 Oct 2004 04:11:45 +0200
From: Someone <someone@example.com>
To: wiki@example.com
Subject: Test-E-Mail
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Dies ist eine Test-E-Mail

.
DELE 1
+OK message marked for delete
QUIT
+OK bye
(schließt Verbindung und führt DELE Befehl aus)

Sicherheit

Authentifizierung

Wie auch SMTP ist POP3 recht simpel. Es setzt die Authentifizierung des Benutzers über Benutzernamen und Passwort voraus. Nutzername und Passwort werden ungeschützt als Klartext übertragen. Das ermöglicht Angreifern den unbemerkten Zugriff auf die Mailbox und ist eine eklatante Sicherheitslücke. Um die Authentifizierung abzusichern, gibt es verschiedene Erweiterungen. Abhilfe schaffen die bei vielen Servern verfügbaren über SASL eingebundenen Mechanismen und das ebenfalls im Standard definierte APOP. Bei Benutzung von APOP wird das Passwort nicht mehr im Klartext übertragen. Stattdessen überträgt der Server am Anfang der Sitzung einen Zeitstempel. Der Mailclient berechnet aus diesem und dem Passwort einen Hash-Wert, der dann an den Server übertragen wird. Kommt der Server zu demselben Ergebnis, gilt der Loginvorgang als erfolgreich.

Verschlüsselung

Authentifizierungsdaten, POP3-Kommandos und die Nachricht selbst können über SSL/TLS auch komplett verschlüsselt übertragen werden. Dabei wird alternativ das STARTTLS-Verfahren (das Kommando lautet STLS) auf dem Standard-TCP-Port 110 oder POP3 über SSL (POP3S) auf TCP-Port 995 verwendet.

Siehe auch

Einzelnachweise

  1. POP4 specification although pop is used to receive mail after system is not online.. 2003. Archiviert vom Original am 27. September 2011. Abgerufen am 17. Oktober 2011.

Literatur

  • RFC 1939 (Post Office Protocol – Version 3)
  • RFC 1082 (POP3 Extended Service Offerings)
  • RFC 1734 (POP3 AUTHentication command)
  • RFC 2595 (Using TLS with IMAP, POP3 and ACAP)
  • RFC 2449 (POP3 Extension Mechanism)
  • RFC 3206 (The SYS and AUTH POP Response Codes)
  • Peer Heinlein, Peer Hartleben: POP3 und IMAP -- Mailserver mit Courier und Cyrus, Open Source Press, September 2007, ISBN 978-3-937514-11-6

Weblinks