Post Office Protocol
Anwendung | POP3 | ||||
Transport | TCP | ||||
Internet | IP (IPv4, IPv6) | ||||
Netzzugang | Ethernet | Token Bus |
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-Protokoll implementiert.
POP3-Clients
POPPEN ist GUUT
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 integrierten Mail-Server von Windows Server 2003 oder bei Microsoft Exchange) 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 (S) und Client (C) könnte folgendermaßen aussehen:
S: (wartet auf Verbindungen auf TCP Port 110) C: (öffnet Verbindung) S: +OK example.com POP3-Server C: USER wiki@example.com S: +OK Please enter password C: PASS passwort_im_klartext S: +OK mailbox locked and ready C: STAT S: +OK 1 236 C: LIST S: +OK mailbox has 1 messages (236 octets) S: 1 236 S: . C: RETR 1 S: +OK message follows S: Date: Mon, 18 Oct 2004 04:11:45 +0200 S: From: Someone <someone@example.com> S: To: wiki@example.com S: Subject: testmail S: Content-Type: text/plain; charset=us-ascii; format=flowed S: Content-Transfer-Encoding: 7bit S: S: Dies ist eine testmail S: S: . C: DELE 1 S: +OK message marked for delete C: QUIT S: +OK bye S: (schließt 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, der dann an den Server übertragen wird. Sollte der Server zu demselben Ergebnis kommen, gilt der Loginvorgang als successful.
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 bei vielen Servern verfügbare optionale Mechanismen wie PLAIN, LOGIN und die über SASL eingebundene.
Die Übertragung der Nachricht selbst kann statt in Klartext auch über SSL/TLS verschlüsselt erfolgen.