Post Office Protocol

Netzwerkprotokoll zum Abholen von E-Mails von E-Mail-Servern
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 18. Oktober 2004 um 04:23 Uhr durch DataGhost (Diskussion | Beiträge) (Kommandos: typische POP3 Session hinzugefügt). Sie kann sich erheblich von der aktuellen Version unterscheiden.
POP3 im TCP/IP-Protokollstapel
Anwendung POP3
Transport TCP
Netzwerk IP
Netzzugang Ethernet Token
Ring
FDDI ...

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 wird bei Bedarf vom Client zum Server erzeugt 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-, bzw. ESMTP-Protokoll implementiert.

POP3 bietet optional die Authentifizierung über Benutzernamen und Passwort. Wird diese Möglichkeit genutzt, so wird das Passwort im Klartext übertragen. Deshalb wurden Erweiterungen zur Implementation der verschlüsselten Authentifizierung entwickelt: APOP und KPOP.

POP3-Clients

Üblicherweise ist POP3 in allen Standard-E-Mail-Clients 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. Microsoft Exchange) integriert.

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

  • courier-pop
  • cyrus-pop3d (Teil der Cyrus-Mailserver-Software)
  • ipopd
  • popa3d
  • qpop3d (Teil von qmail)
  • qpopper (der Firma Qualcomm)

Kommandos

Bei einem erfolgreich durchgeführten Kommando antwortet der POP3-Server mit +OK, im Falle eines Fehlers mit -ERR.

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.
QUIT
beendet die aktuelle POP3-Sitzung.


Optionale Kommandos (serverabhängig):

APOP
sichere Anmeldung, siehe APOP
TOP n x
ruft den Header und x Zeichen 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.

Eine typische POP3 Session könnte folgendermaßen aussehen:

> +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: testmail
> Content-Type: text/plain; charset=us-ascii; format=flowed
> Content-Transfer-Encoding: 7bit
>
> Dies ist eine testmail
>
> .
< DELE 1
> +OK message deleted
< QUIT
> +OK bye

APOP

Bei APOP wird nicht das Passwort 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, der dann an den Server übertragen wird. Sollte der Server zu demselben Ergebnis kommen, gilt der Loginvorgang als erfolgreich.

Literatur

  • RFC 1082 (POP3 Extended Service Offerings)
  • RFC 1939 (Post Office Protocol - Version 3)