Post Office Protocol

POP (Post Office Protocol) je internetový protokol, který se používá pro stahování e-mailových zpráv ze vzdáleného serveru na klienta. Jedná se o aplikační protokol pracující přes TCP/IP připojení. V současnosti je používána zejména třetí verze (POP3), která byla standardizována v roce 1996 v RFC 1939.

POP3 je následníkem protokolů POP1 a POP2 (označení POP už dnes téměř výhradně znamená POP3). V současné době používají téměř všichni uživatelé elektronické pošty pro stahování e-mailů programy využívající POP3 nebo IMAP.

Ze vzdáleného serveru se stáhnou všechny zprávy, třeba i ty, které uživatel číst nechce, nebo spam (pokud ho již nefiltruje poštovní server). Většina POP3 serverů sice umožňuje stáhnout i pouze hlavičky zpráv (a následně vybrat zprávy, které se stáhnou celé), ale podpora v klientech vesměs chybí. Tuto nevýhodu může odstranit protokol IMAP, který pracuje se zprávami přímo na serveru.

Pro odesílání zpráv se používá protokol SMTP, nezávisle na použitém protokolu pro příjem pošty.

Historie

Protokol verze POP1 byl vydán v říjnu 1984, standardizován v RFC 918 (5 stran) a autorem je Joyce Reynolds. O pět měsíců později byla vydána druhá verze, POP2 v RFC 937 (24 stran). Rozdíl oproti POP1 byl hlavně v komunikaci mezi klientem a serverem. První dvě verze byly určeny jen ke stažení e-mailu a jeho následnému odstranění ze serveru. Roku 1994 byla standardizována třetí a zatím poslední verze, POP3 v RFC 1725 (18 stran). Tato verze se od předcházejících dvou výrazně liší. Zatímco předcházející verze pracovaly na principu „push“ (server odešle data ke klientovi), verze POP3 pracuje na principu „pull“ (klient požaduje data od serveru). Umožňuje oproti předchozím značné množství nastavení, jako například možnost stáhnout pouze hlavičky e-mailů. Dnes se používá výhradně POP3, POP2 je využíván v zanedbatelném množství.

Zabezpečení

Jako mnoho jiných starších internetových protokolů, POP3 původně podporoval jenom nešifrované přihlašovací mechanismy. Ačkoli v POP3 je běžný jednoduchý (nezabezpečený) přenos hesel, podporuje současně několik autentizačních metod ověřování na různých úrovních ochrany před neoprávněným přístupem k cizí poštovní schránce. Jedna taková metoda, APOP (kterou základní specifikace definuje jako „volitelný příkaz“), užívá MD5 hash funkci pro zabezpečený přenos hesla od klienta na server. Klienti podporující APOP jsou například Mozilla, Thunderbird, Eudora a Novell Evolution. Klienti mohou také šifrovat celou POP3 komunikaci užitím SSL nebo modernějšího TLS.

Komunikace

Protokol POP3 má pro své účely vyhrazen TCP port 110. Komunikace probíhá na principu výměny zpráv mezi klientem a serverem. Příkaz vždy začíná na začátku řádky, v základní implementaci POP3 mají příkazy 3 nebo 4 znaky. Příkazy nerozlišují velká a malá písmena. Za příkazem mohou následovat další argumenty oddělené mezerami. Řádky jsou oddělovány pomocí CRLF. Každá odpověď od serveru musí začínat indikací stavu operace – buď +OK, nebo -ERR. Následovat může textový řetězec s popsaným důvodem stavu. POP3 implementace jsou často poměrně komunikativní a dají se užívat i „ručně“.

Příklad komunikace mezi klientem a serverem

S: <server naslouchá na TCP portu 110>
C: <otevření spojení>
S: +OK POP3 server ready <1896.697170952@dbc.mtview.ca.us>
C: APOP mrose c4c9334bac560ecc979e58001b3e22fb

Klient posílá jméno a heslo (USER, PASS) -->
C: USER mrose
S +OK User accepted
C: PASS mrosepass
S +OK Pass accepted

S: +OK mrose's maildrop has 2 messages (320 octets)
C: STAT
S: +OK 2 320
C: LIST
S: +OK 2 messages (320 octets)
S: 1 120
S: 2 200
S: .
C: RETR 1
S: +OK 120 octets
S: <POP3 server posílá 1. zprávu>
S: .
C: DELE 1
S: +OK message 1 deleted
C: RETR 2
S: +OK 200 octets
S: <POP3 server posílá 2. zprávu>
S: .
C: DELE 2
S: +OK message 2 deleted
C: QUIT
S: +OK dewey POP3 server signing off (maildrop empty)
C: <uzavření spojení>
S: <server čeká na další spojení>

Nejznámější e-mailoví klienti

E-mailový klient je program, který komunikuje se vzdáleným serverem a pomocí příkazů dokáže uložit e-maily na lokální disk a následně je odstranit ze serveru. V současnosti podporuje POP3 většina klientů. Nejběžnější a nejpoužívanější e-mailoví klienti jsou:

  • Evolution: osobní informační manažer pro prostředí GNOME. Obsahuje poštovního klienta, adresář, kalendář, seznam úkolů a poznámky.

Shrnutí

  • POP3 pracuje přes TCP/IP připojení užívající TCP port 110.
  • Používá se pro rychlé a pohodlné stahování zpráv ze serveru do vlastního počítače.
  • Klienti mohou také šifrovat celou POP3 komunikaci užitím SSL nebo modernějšího TLS.

Související články

POP3 RFCs

  • RFC 1939 – „Post Office Protocol - Version 3“
  • RFC 2449 – „POP3 Extension Mechanism“
  • RFC 1734 – „POP3 AUTHentication command“
  • RFC 2222 – „Simple Authentication and Security Layer (SASL)“
  • RFC 3206 – „The SYS and AUTH POP Response Codes“