- Post Office Protocol
-
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
BusToken
RingFDDI … Standards: RFC 1939 (POP3, 1996) Das Post Office Protocol (POP) ist ein Übertragungsprotokoll, über welches 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 Funktionalitäten 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.
Inhaltsverzeichnis
Vorgänger
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.
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:
- courier-pop
- cyrus-pop3d (Teil der Cyrus-Mailserver-Software)
- Dovecot
- ipopd
- popa3d
- qpop3d (Teil von qmail)
- qpopper (der Firma Qualcomm)
- ipop3d (aus dem IMAP Toolkit Environment von Mark Crispin)
- Citadel/UX
Vor- und Nachteile von POP3
Vorteil Nachteil - Es ist keine ständige Verbindung zum Mailserver notwendig
- Die Verbindung wird bei Bedarf vom Client aufgebaut und beendet
- Nach der Anmeldung werden alle E-Mails vom Mailserver heruntergeladen
- Logindaten werden im Klartext übertragen
- Kein getrenntes Abrufen der E-Mails
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 geben Sie unter Windows oder Linux telnet example.com pop3 in der Eingabeaufforderung oder in der Konsole ein. Domainname 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 diverse 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 MD5-Hash-Wert, der dann an den Server übertragen wird. Kommt der Server zu demselben Ergebnis, gilt der Loginvorgang als erfolgreich.
Verschlüsselung
Die Übertragung der Authentifizierungsdaten, der POP3-Kommandos und der Nachricht selbst kann auch komplett über SSL/TLS verschlüsselt erfolgen. 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.
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
Kategorien:- Netzwerkprotokoll auf Anwendungsschicht
Wikimedia Foundation.