POP3

Aus MindLoot
Wechseln zu: Navigation, Suche

POP3 (Post Office Protocol Version 3) ist ein Übertragungsprotokoll, über welches ein Client E-Mails von einem E-Mail-Server abholen kann. Es 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.

Eine ständige Verbindung zum Mailserver ist bei POP3 nicht notwendig. Die Verbindung zum Server wird bei Bedarf vom Client aufgebaut und danach wieder beendet.

POP3 ist in der Funktionalität sehr beschränkt und erlaubt nur das 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 zum Versenden von E-Mails ist üblicherweise in Clients und Servern das SMTP-Protokoll implementiert.

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 erstmalig 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 dass der korrekte Empfang einer Mail nicht mehr bestätigt werden muss. 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 ist 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.

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

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 der neuen E-Mails.
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 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 110 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 muster.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: testmail
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Dies ist eine testmail

.
DELE 1
OK message marked for delete
QUIT
OK bye
(schliesst Verbindung)

APOP

Bei APOP wird das Passwort nicht mehr im Klartext übertragen. Stattdessen überträgt der Server am Anfang der Sitzung einen Zeitstempel. Der Mailclient berechnet aus diesen Angaben und dem Passwort einen MD5-Hash-Wert, der dann an den Server übertragen wird. Sollte der Server zu demselben Ergebnis kommen, gilt der Loginvorgang als erfolgreich.

Sicherheit

Wie auch SMTP ist POP3 recht simpel, Um den Mailabruf weiter abzusichern, gibt es diverse Erweiterungen.

POP3 setzt die Authentifizierung des Benutzers über Benutzernamen und Passwort voraus. Das immer noch am häufigsten genutzte USER/PASS-Verfahren überträgt die Anmeldedaten jedoch im Klartext. Abhilfe schafft das ebenfalls im Standard definierte APOP (s.o.) oder die bei vielen Servern verfügbaren, über SASL eingebundenen Mechanismen.

Die Übertragung der Nachricht selbst kann statt in Klartext auch über SSL/TLS verschlüsselt erfolgen.

Weblinks

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)

[[Kategorie:Netzwerkprotokoll