POP3

POP3
název Poštovní protokol 3
Úroveň (podle modelu OSI ) Aplikovaný
Rodina TCP/IP
Port/ID 110/TCP, 995/TCP (POP přes SSL)
Účel protokolu Příjem e-mailu
Specifikace RFC 1939 / STD 53
Hlavní implementace (klienti) MUA ( MS Outlook , Mozilla Thunderbird , The Bat!, KMail , Claws Mail , mutt atd .)
Implementace jádra ( servery ) Qpopper , MS Exchange Server , CommuniGate Pro , Mail Daemon , Dovecot
Rozšiřitelnost Přidat. příkazy ( RFC 2449 )

POP3 ( Post Office Protocol verze 3 - Post Office  Protocol  , verze 3) je standardní internetový protokol aplikační vrstvy používaný e-mailovými klienty k přijímání pošty ze vzdáleného serveru přes připojení TCP .

POP a IMAP (Internet Message Access Protocol) jsou nejběžnější internetové protokoly pro načítání pošty. Téměř všichni moderní e-mailoví klienti a servery podporují oba standardy. Protokol POP byl vyvinut v několika verzích, současným standardem je třetí verze (POP3). Většina poskytovatelů e-mailu (jako je Hotmail , Gmail a Yahoo! Mail) také podporuje IMAP a POP3. Předchozí verze protokolu (POP, POP2) jsou zastaralé.

Alternativní protokol pro sběr zpráv z poštovního serveru je IMAP .

Obecné informace

POP podporuje jednoduché požadavky na stahování a mazání pro přístup ke vzdáleným poštovním schránkám. Zatímco většina klientů POP poskytuje možnost ponechat poštu na serveru po stažení, klienti POP se obvykle připojují, načítají veškerou poštu, ukládají ji v počítači uživatele jako nové zprávy, odstraní ji ze serveru a poté se odpojí.

Jiné protokoly, jako je IMAP, poskytují úplnější a komplexnější vzdálený přístup k typickým operacím poštovní schránky. Mnoho e-mailových klientů podporuje POP i IMAP; mnohem méně poskytovatelů internetových služeb však podporuje protokol IMAP.

Server POP3 naslouchá na známém portu 110. Šifrování komunikace pro POP3 je požadováno po spuštění protokolu buď příkazem STLS (pokud je podporován) nebo POP3S, který se k serveru připojí pomocí TLS nebo SSL na portu TCP 995.

Dostupné klientské zprávy jsou zachyceny, když je poštovní schránka otevřena relací POP, a jsou určeny počtem zpráv pro relaci nebo volitelně jedinečným identifikátorem přiřazeným zprávě serverem POP. Tento jedinečný identifikátor je trvalý a jedinečný pro poštovní schránku a umožňuje klientovi přistupovat ke stejné zprávě v různých relacích POP. Pošta je načtena a označena ke smazání pomocí čísla zprávy. Když se klient odhlásí z relace, označené zprávy jsou z poštovní schránky odstraněny.

Historie

POP (POP1) je definován v RFC 918 (1984), POP2 v RFC 937 (1985). Původní specifikace POP3 byla poskytnuta v RFC 1081 (1988). Ten současný je popsán v RFC 1939 , aktualizovaný o mechanismus rozšíření ( RFC 2449 ) a mechanismus ověřování ( RFC 1734 ).

Verzi POP2 byl přiřazen port 109.

Původní specifikace POP3 podporovala pouze nešifrovaný mechanismus přihlášení USER/ PASS nebo řízení přístupu .rhosts . POP3 v současné době podporuje různé metody autentizace , které poskytují různé úrovně ochrany proti neoprávněnému přístupu k uživatelské poště. Většina z nich je poskytována mechanismy rozšíření POP3. Klienti POP3 podporují metody SASL prostřednictvím rozšíření AUTH. V rámci projektu MIT Athena byla také představena metoda založená na Kerberos . RFC 1460 zavedl APOP do základního protokolu. APOP je protokol požadavku/odpovědi , který používá hashovací funkci MD5 . Mezi klienty implementující APOP patří Mozilla Thunderbird , Opera Mail , Eudora , Windows Live Mail, PowerMail, Apple Mail atd.

Byl učiněn neformální návrh na specifikaci „POP4“ s implementací fungujícího serveru. Tento návrh přidal základní funkce správy složek, podporu vícedílných zpráv a správu příznaků zpráv. V „POP4“ však od roku 2003 nedošlo k žádnému pokroku.

Rozšíření

Mechanismus rozšíření byl navržen v RFC 2449 , aby vyhovoval novým rozšířením, stejně jako organizované oznámení o podpoře volitelných příkazů, jako je TOP a UIDL. RFC neměly v úmyslu podporovat rozšíření a potvrdily, že role POP3 je poskytovat jednoduchou podporu hlavně pro požadavek stahování a mazání.

Rozšíření jsou uvedena u příkazu CAPA. S výjimkou APOP byly všechny volitelné příkazy zahrnuty do původní sady funkcí. Stejně jako u standardu ESMTP ( RFC 5321 ) jsou schopnosti začínající na „X“ místní.

STARTTLS

Rozšíření STARTTLS umožňuje používat TLS (Transport Layer Security) nebo SSL (Secure Sockets Layer) ke komunikaci pomocí příkazu STLS přes standardní POP3 port. Někteří klienti a servery používají metodu alternativního portu, která funguje na portu TCP 995 (POP3S).

SDPS

Britský poskytovatel Demon Internet představil rozšíření POP3, které umožňovalo více účtů na doménu, známé jako SDPS (Standard Dial-up POP3 Service). Pro přístup ke každému účtu obsahuje uživatelské jméno název hostitele, například jan@hostname nebo jan+hostname.

Google Apps používá stejnou metodu [1] .

Srovnání s IMAP

Klienti, kteří nechávají poštu na serverech, obvykle používají příkaz UIDL k získání aktuální korespondence mezi počtem zpráv a zprávou danou jejím jedinečným identifikátorem. Identifikátor je libovolný a lze jej opakovat, pokud jsou ve schránce stejné zprávy. Naproti tomu IMAP používá 32bitový jedinečný identifikátor (UID), který je zprávám přiřazován ve vzestupném (ale ne nutně po sobě jdoucím) pořadí, jak jsou přijímány. Při načítání nových zpráv klienti IMAP požadují UID větší, než je nejvyšší hodnota UID ze všech dříve načtených zpráv, zatímco klient POP si musí vybrat z celé mapy UIDL. U velkých poštovních schránek to může vyžadovat značné zpracování.

MIME slouží jako standard pro přílohy a ne-ASCII text v elektronických zprávách. Zatímco POP3 ani SMTP nevyžadují zprávu ve formátu MIME, v podstatě všechny zprávy, které nejsou ASCII, přicházejí ve formátu MIME, takže klienti POP musí také „rozumět“ MIME a používat je. IMAP podle definice přijímá zprávy ve formátu MIME.

Stavy relace

V protokolu POP3 existují 3 stavy relace:

Povolení Klient projde Autentizační procedurou . transakce Klient dostává informace o stavu schránky, přijímá a maže poštu. Aktualizace Server odstraní vybrané e-maily a uzavře spojení.

Protokolové příkazy

název Argumenty Omezení Možné odpovědi
APOP [jméno] [shrnutí] Její podpora je volitelná. * +OK maildrop má n zpráv * -ERR heslo zadané pro [jméno] je nesprávné
UŽIVATEL [název] * +OK jméno je platná poštovní schránka * -ERR nikdy neslyšel o názvu poštovní schránky
SLOŽIT [Heslo] Funguje po úspěšném přenosu názvu poštovní schránky * +OK maildrop uzamčen a připraven * -ERR neplatné heslo * -ERR nelze zamknout maildrop
DELE [zpráva] Dostupné po úspěšné autentizaci * Zpráva +OK smazána * -ERR žádná taková zpráva
SEZNAM [zpráva] Dostupné po úspěšné autentizaci * Následuje výpis skenování +OK * -ERR žádná taková zpráva
NEOP Dostupné po úspěšné autentizaci + OK
RETR [zpráva] Dostupné po úspěšné autentizaci * Následuje zpráva +OK * -ERR žádná taková zpráva
RSET Dostupné po úspěšné autentizaci + OK
STAT Dostupné po úspěšné autentizaci + OK ab
HORNÍ [zpráva] [počet řádků] Dostupné po úspěšné autentizaci * +OK n oktetů * -ERR žádná taková zpráva
PŘESTAT + OK

APOP

Příkaz se používá k odeslání hash uživatelského jména a hesla (digest) na server.
[jméno]  je řetězec, který určuje název poštovní schránky.
[digest]  je hash součet časového razítka zřetězený s heslem uživatele, vypočítaný pomocí algoritmu MD5 . Pokud je tento příkaz podporován, časové razítko se získá při připojení k serveru.

USER

Předá uživatelské jméno serveru.
[jméno]  je řetězec, který určuje název poštovní schránky.

PASS

Odešle heslo poštovní schránky na server.
[heslo]  - heslo k poštovní schránce.

DELE

Server označí zadanou zprávu ke smazání. Zprávy označené ke smazání se ve skutečnosti smažou až po uzavření transakce (transakce se obvykle uzavírají po odeslání příkazu QUIT, navíc např. na serverech lze transakce uzavřít po určité době nastavené serverem).
[zpráva]  - číslo zprávy.

SEZNAM

Pokud byl argument předán, server vrátí informace o zadané zprávě. Pokud argument nebyl předán, server vydá informace o všech zprávách v poštovní schránce. Zprávy označené ke smazání nejsou uvedeny.
[zpráva]  - číslo zprávy (volitelný argument).

NOOP

Server nic nedělá, vždy reaguje kladně.

Zpráva RETR

Server odešle zprávu se zadaným číslem.
[zpráva]  - číslo zprávy.

RSET

Tento příkaz vrátí zpět transakce v rámci relace. Pokud například uživatel omylem označil některé zprávy ke smazání, může tyto příznaky odstranit zadáním tohoto příkazu.

STAT

Server vrátí počet zpráv ve schránce a velikost schránky v oktetech. Zprávy označené jako smazané se nepočítají.

TOP

Server vrátí záhlaví zadané zprávy, prázdný řetězec a zadaný počet prvních řádků těla zprávy.
[zpráva]  - číslo zprávy.
[počet řádků]  - kolik řádků se má zobrazit.

Příklad relace

Toto je příklad relace s podporou šifrovaného hesla ( APOP , RFC 1939 ):

S: <Server naslouchá příchozím připojením na portu 110> C: <připojování k serveru> S: + OK server POP3 připraven <[email protected]> C: APOP mrose c4c9334bac560ecc979e58001b3e22fb S: +OK mrose's maildrop má 2 zprávy (320 oktetů) C:STAT S: +OK 2 320 C: SEZNAM S: +OK 2 zprávy (320 oktetů) S: 1 120 S: 2 200 S: . C: RETR 1 S: +OK 120 oktetů S: <server odešle zprávu 1> S: . C: DELE 1 S: +OK zpráva 1 smazána C: RETR 2 S: +OK 200 oktetů S: <server odešle zprávu 2> S: . C:DELE2 S: +OK zpráva 2 smazána C: KONEC S: +OK dewey POP3 server odhlašování (prázdná schránka) C: <zavře připojení> S: <pokračuje v čekání na příchozí spojení>

Možnost spustit relaci, ve které je heslo přenášeno jako prostý text:

C: USER mrose S +OK Uživatel přijat C:PASSmroseheslo S+OK Pass přijat

Poznámky

  1. Rozdíly mezi Google Apps a Gmailem – Nápověda Gmailu

Odkazy

Odkazy na zmíněné RFC

Literatura