Elektronická pošta (e mail)

Podobné dokumenty
3.8 Elektronická pošta

Elektronická pošta. elementární služba, výchozí pro některé další jedna z prvních síťových služeb vůbec. základní principy popisují

Počítačové sítě Internetový systém elektronické pošty

Elektronická pošta... 3 Historie... 3 Technické principy... 3 Komunikační protokoly... 3 MBOX... 4 Maildir... 4 Jak funguje POP3...

Inovace a zkvalitnění výuky prostřednictvím ICT Počítačové sítě

Podstata elektronické pošty

Relační vrstva SMB-Síťový komunikační protokol aplikační vrstvy, který slouží ke sdílenému přístupu k souborům, tiskárnám, sériovým portům.

spolupráce více systémů. . Pro zajištění služby je používáno více aplikačních protokolů, např.: DNS SMTP.

Úvod do informatiky 5)

Schéma e-pošty. UA (User Agent) rozhraní pro uživatele MTA (Message Transfer Agent) zajišťuje dopravu dopisů. disk. odesilatel. fronta dopisů SMTP

Identifikátor materiálu: ICT-3-10

Inovace výuky prostřednictvím šablon pro SŠ

Identifikátor materiálu: ICT-3-03

Přístup k transportní vrstvě z vrstvy aplikační rozhraní služeb služby pro systémové aplikace, služby pro uživatelské aplikace DNS

metodický list č. 1 Internet protokol, návaznost na nižší vrstvy, směrování

Inovace výuky prostřednictvím šablon pro SŠ

9. Systém DNS. Počítačové sítě I. 1 (6) KST/IPS1. Studijní cíl. Představíme si problematiku struktury a tvorby doménových jmen.

pozice výpočet hodnota součet je 255

Datum vytvoření. Vytvořeno 18. října Očekávaný výstup. Žák chápe pojmy URL, IP, umí vyjmenovat běžné protokoly a ví, k čemu slouží

Název školy: Základní škola a Mateřská škola Žalany. Číslo projektu: CZ. 1.07/1.4.00/ Téma sady: Informatika pro devátý ročník

Ing. Jitka Dařbujanová. , SSL, News, elektronické konference

Y36SPS Jmenné služby DHCP a DNS

Počítačové sítě Aplikační vrstva Domain Name System (DNS)

Domain Name System (DNS)

SOU Valašské Klobouky. VY_32_INOVACE_02_18 IKT DNS domény. Radomír Soural. III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

1. DATOVÉ SCHRÁNKY OBECNÝ PŘÍSTUP K DATOVÉ SCHRÁNCE DATOVÉ ZPRÁVY... 3

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Příručka nastavení funkcí snímání

Jmenné služby a adresace

Uživatel počítačové sítě

Celosvětová síť Internet. IKT pro PD1

DNS, DHCP DNS, Richard Biječek

PRAVIDLA PROVOZU ELEKTRONICKÉ POŠTY V BIOFYZIKÁLNÍM ÚSTAVU AV ČR

VY_32_INOVACE_IKTO2_0960 PCH

EU-OPVK:VY_32_INOVACE_FIL9 Vojtěch Filip, 2013

Analýza síťového provozu. Ing. Dominik Breitenbacher Mgr. Radim Janča

DNS server (nameserver, jmenný server) Server, který obsahuje všechny veřejné IP adresy a jejich přiřazené doménové jména a překládá je mezi sebou. Po

CAD pro. techniku prostředí (TZB) Počítačové sítě

Domain Name System (DNS)

DNS. Počítačové sítě. 11. cvičení

Úvod do informačních služeb Internetu

Inovace a zkvalitnění výuky prostřednictvím ICT Počítačové sítě Vrstvový model TCP/IP Ing. Zelinka Pavel

Platební systém XPAY [

Poslední aktualizace: 1. srpna 2011

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Práce s ovými schránkami v síti Selfnet

Elektronická komunikace

Téma 2 - DNS a DHCP-řešení

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Počítačové sítě. Počítačová síť. VYT Počítačové sítě

(5) Klientské aplikace pro a web, (6) Elektronický podpis

Správa linuxového serveru: Úvod do poštovního serveru

Inovace výuky prostřednictvím šablon pro SŠ

Internet protokol, IP adresy, návaznost IP na nižší vrstvy

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Hodinový rozpis kurzu Správce počítačové sítě (100 hod.)

Internet. Počítačová síť, adresy, domény a připojení. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie

1 Protokol TCP/IP (Transmission Control Protocol/Internet Protocol) a OSI model

DNSSEC Pavel Tuček

Překlad jmen, instalace AD. Šimon Suchomel

Další nástroje pro testování

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Dokumentace. k modulu. podnikový informační systém (ERP) Datové schránky

Internet. Jak funguje internet. Internetový prohlížeč

Internet. Jak funguje internet. Připojení do internetu

Nastavení telefonu T-Mobile MDA II

Internet - základní pojmy

POČÍTAČOVÉ SÍTĚ Metodický list č. 1

7. Aplikační vrstva. Aplikační vrstva. Počítačové sítě I. 1 (5) KST/IPS1. Studijní cíl. Představíme si funkci aplikační vrstvy a jednotlivé protokoly.

TRANSPORTY výbušnin (TranV)

Inovace bakalářského studijního oboru Aplikovaná chemie

3.17 Využívané síťové protokoly

Počítačové sítě Systém pro přenos souborů protokol FTP

Analýza aplikačních protokolů

Nastavení telefonu T-Mobile MDA II

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Rodina protokolů TCP/IP, verze 2.6. Část 9: Elektronická pošta

Ing. Jitka Dařbujanová. TCP/IP, telnet, SSH, FTP

Dokumentace ke službě SMS Connect.

Zásobník protokolů TCP/IP

CZ.1.07/1.5.00/

MODELY POČÍTAČOVÝCH SÍTÍ

Úvod do analýzy. Ústav informatiky, FPF SU Opava Poslední aktualizace: 8. prosince 2013

JAK ČÍST TUTO PREZENTACI

File Transfer Protocol (FTP)

Zákony pro lidi - Monitor změn (zdroj:

Inovace bakalářského studijního oboru Aplikovaná chemie

Počítačové sítě ve vrstvách model ISO/OSI

Jak nastavit 2SMS a SMS2 na bráně 2N VoiceBlue Next

Technologie počítačových sítí 10. přednáška

Jan Forman Manuál CLASSIFICATIO N: public / veřejný dokument IDE NTIFICATIO N N U MBER: AUTH OR:

Inovace bakalářského studijního oboru Aplikovaná chemie

Aplikační vrstva. Přístup k transportní vrstvě z vrstvy aplikační rozhraní služeb služby pro systémové aplikace, služby pro uživatelské aplikace HTTP

L i n u x j a k o r o u t e r, f i r e w a l l, D H C P s e r v e r, p r o x y a D N S c a c h e, 2. č á s t

Úvod do aplikací internetu a přehled možností při tvorbě webu

Použití programu WinProxy

X36PKO Jmenné služby Jan Kubr - X36PKO 1 4/2007

Transkript:

Elektronická pošta e mail Cílem této kapitoly je seznámit čtenáře s jednou z nejpoužívanějších a nejoblíbenějších služeb počítačových sítí elektronickou poštou a technologiemi, na kterých je tato služba založena. Po prostudování kapitoly by měl čtenář rozumět mechanismu výměny dat mezi e mailovým serverem a e mailovým klientem a znát princip a použití protokolů pro odesílání a přijímání elektronické pošty. Klíčové pojmy: Smtp, pop3, imap, DNS, MX záznam, standard MIME Elektronická pošta (e mail) Elektronická pošta je způsob odesílání, doručování a přijímání zpráv přes elektronické komunikační systémy. [Wikipedie] Nejedná se pouze o službu Internetu, ale jde o obecný princip, fungující na mnoha různých architekturách počítačových sítí, a to jak v Internetu, tak v různých intranetových systémech. Jako příklad můžeme jmenovat X.400 referenčního modelu ISO/OSI (poštovní systém MS Exchange firmy Microsoft), či proprietární platformu Mail602 firmy Software602. Tyto intranetové systémy používají často vlastní nestandartní protokoly, nicméně bývají spojeny s Internetem e mailovou bránou pro odesílání a příjem pošty zvenčí. Internetový systém elektronické pošty je založen na několika standardizovaných protokolech, zejména na protokolu SMTP. Tento protokol a tím i elektronická pošta založená na tomto protokolu jsou dostupné ve všech sítích architektury TCP/IP. Mezi největší výhody elektronické pošty patří: odesilatel a příjemce nemusí být současně připojeni k počítačové síti, elektronická pošta umožňuje zprávu uschovat k pozdějšímu vyřízení, zpráva je elektronickým dokumentem a lze s ní takto pracovat, úkony spojené s odesíláním a příjmem pošty je možno automatizovat, je možné nastavit pravidla pro třídění přijaté pošty a práci s ní. Ve své původní podobě vznikla elektronická pošta pro výměnu jednoduchých a krátkých textových zpráv psaných v angličtině. Teprve s otevřením se Internetu veřejnosti vyvstala potřeba přenášet pomocí elektronické pošty i dokumenty jiného typu a pro psaní zpráv používat i znaky národních abeced. Tyto požadavky pak vedly k potřebě uzpůsobit přenosové mechanismy elektronické pošty a obohatit je zejména o podporu jiných jazyků a znakových sad, rozšíření přenášených formátů, 11/6/2010 www 1

sjednocení způsobu přibalování příloh. Tím se z elektronické pošty stala mnohem komplexnější a univerzálnější služba, která dnes patří k nejvyužívanějším službám jakékoliv počítačové sítě. Princip fungování elektronické pošty Mezi počítači připojenými v počítačové síti probíhá výměna zpráv. Tato výměna probíhá jednak mezi koncovými počítači uživatelů a jejich poštovními servery, jednak mezi poštovními servery navzájem. Uživatelé mají na svém počítači nainstalován program, nazývaný e mailový klient (MS Outlook, Outlook Express, Netscape Mail, Eudora, Pegasus, KMail, AppleMail), případně přistupují ke svému poštovnímu serveru pomocí webového rozhraní. E mailový klient stahuje zprávy z poštovního serveru pomocí protokolů POP3 nebo IMAP, případně pomocí některého z komerčních protokolů (Microsoft Exchange Server, Lotus Note). Pro odesílání zpráv z klienta na server nebo mezi servery navzájem pak slouží protokol SMTP. Při odesílání zprávy přes internet je vyžadován spolehlivý přenos zprávy i při dočasném výpadku cílového serveru. Pro adresování pošty (nalezení cílového serveru) je použita část e mailové adresy, nacházející se za znakem @. Tuto část adresy (doména) Mail Transfer Agent, tedy každý server, který posílá elektronickou poštu jinému poštovnímu serveru, vyhledá ve svém DNS a zjistí mail exchange server, přijímající poštu pro danou doménu (tzv. MX záznam). Domény mívají kromě hlavního mail exchange serveru ještě záložní server, který se stará o doručování pošty v případě výpadku hlavního serveru. Pokud přesto není možné zprávu doručit, musí Mail Transfer Agent informovat odesilatele. E mailová adresa Každý uživatel musí mít pro příjem zpráv svoji vlastní e mailovou adresu, která identifikuje jeho poštovní schránku (složku na poštovním serveru). Pro odesílání zprávy není e mailová schránka nutná. E mailová adresa se skládá ze tří částí: místní část adresy (příjemce, místo určení) znak zavináč @ internetová doména Pro vytváření e mailové adresy platí pravidla, definovaná normou RFC 5321. Samotná e mailová adresa může být složena pouze z vymezeného okruhu znaků, mezi něž patří písmena anglické abecedy a vybraná interpunkční znaménka, 11/6/2010 www 2

například tečka, spojovník nebo podtržítko. Písmena jiných abeced včetně písmen s diakritikou se nepoužívají, rovněž mezera nesmí být v adrese obsažena. E mailový klient si obvykle kromě e mailové adresy vede i záznam o uživatelském jménu, přidruženému k příslušné e mailové adrese. Uživatelské jméno může být libovolné (může tedy obsahovat i znaky národních abeced), nicméně se mohou v nekompatibilních poštovních klientech zobrazovat nestandartně. Jako ochranu před spamem a automatizovanými útoky je dobré v případě zveřejnění adresy na internetu tuto uvést v podobě srozumitelné člověku, ale nesrozumitelné robotu. Např. nahradit znak @ slovem zavináč a znak. slovem tečka, případně zveřejnit e mailovou adresu v grafické podobě (jako obrázek), jejíž čtení robotem je podstatně složitější. DNS a MX záznamy DNS DNS je zkratka z anglického Domain Name System, což znamená hierarchický systém doménových jmen, sloužící primárně k převodu adres síťových prvků v doménovém tvaru (snáze zapamatovatelný uživatelem) na číselný tvar (IP adresu používanou stroji). Tento systém je spravován doménovými servery, využívajícími ke komunikaci protokol DNS. Systém DNS umožňuje také překlad IP adres na doménový tvar (PTR záznam). DNS servery i systém doménových jmen jsou organizovány hierarchicky (tvoří strom), nejvýše (kořen stromu) stojí kořenová doména tečka, hned pod ní jsou tematické či státní domény nejvyšší úrovně TLD top level domain, např. cz, edu, com, sk atd. Každý uzel stromu obsahuje informace odkazy na podřízené domény a informace o jméně, které mu bylo přiděleno (o doméně). Každá doména se pak může dále rozštěpit na dceřinné domény, ty se mohou opět dále rozštěpit atd. Tímto způsobem je zajištěn dostatečný počet doménových jmen ve jmenném prostoru. Jednoznačná identifikace každého uzlu je pak zajištěna pomocí celé cesty k doméně od TLD, přitom platí, že jedno jméno může být v jedné doméně přiděleno pouze jednou, tím je zabráněno dublování jmen ve jmenném prostoru. Z hlediska organizace je celý systém doménových jmen rozdělen na zóny, které jsou spravovány správci (organizacemi či jednotlivci). Kořenovou doménu spravuje mezinárodní organizace ICANN, kromě správy domény má na starosti distribuci velkých bloků IP adres, správu čísel autonomních systémů, deleguje pravomoci na správu jednotlivých TLD dalším subjektům a zodpovídá za celý jmenný prostor DNS. TLD pro českou republiku, tedy doménu cz, má na starosti sdružení právnických osob CZ.NIC. Tato organizace má na starosti administrativní a technickou správu domény, stanovuje pravidla přidělování subdomén. 11/6/2010 www 3

DNS servery Každá zóna (doména) má přidělený primární DNS server, který nese převodní informace mezi doménovým jménem a IP adresou a také informace o svých subdoménách. Tento server bývá právě jeden (z důvodů odstranění redundance údajů a jejich nekompatibility při změnách). Dále mívá každá zóna alespoň jeden či více sekundárních serverů, které bývají umístěny v jiné lokalitě a zrcadlí obsah primárního serveru. V případě nedostupnosti primárního serveru nebo v případě velkého objemu požadavků mohou funkci primárního serveru zastoupit. Dotazy na DNS server Dotazování na doménové jméno probíhá následovně: uživatel vznese dotaz, jaká IP adresa odpovídá zadanému doménovému jménu na jemu nejbližší DNS server. Adresu lokálního serveru, na který se má obracet s dotazy má každý koncový počítač uloženu ve své konfiguraci síťových parametrů. Ve většině případů tento server odpověď nezná, protože adresa neleží v jeho doméně, ale dotaz předá kořenovému serveru. Ten se obrátí na doménu nejvyšší úrovně, která je uvedena v doménovém jméně dotazu. Name server této domény dotaz přepošle na name server domény první úrovně v doménovém jméně dotazu a tak dále, až se dotaz dostane k serveru domény, která požadovanou adresu obhospodařuje. Tento name server poskytne tzv. autorizovanou (směrodatnou, ověřenou) odpověď tazateli. Odpověď k tazateli doputuje prostřednictvím původně dotázaného lokálního DNS serveru. Lokální server si ji pak ještě nějakou dobu pamatuje ve své cache paměti a je schopen ji poskytnout případnému dalšímu tazateli. V tom případě se ale bude jednat o neautorizovanou odpověď, tazatel může žádat o autorizovanou odpověď, pak se opět bude kontaktovat server domény, která požadovanou adresu obhospodařuje. Reverzní dotazy V případě reverzních dotazů je třeba vyřešit problém s opačným uspořádáním IP adresy a doménového jména. Při reverzním dotazování je pořadí bajtů v IP adrese otočeno a dotazování opět probíhá od vyhledání nejobecnější domény a poté dalších příslušných podsítí. Na odpověď reverzního dotazu se nelze zcela spoléhat, je třeba si odpověď ještě ověřit zpětným dotazováním (zadat dotaz na doménové jméno z odpovědi autorizovanému serveru a porovnat poskytnutou IP adresu). Formát DNS záznamů Záznamy autoritativního DNS serveru obsahují informace o konkrétní doméně a názvy domén nižších řádů či jejich autoritativních serverů. Záznamy bývají nejčastěji ve formě textových sobourů, kde každý řádek odpovídá jednomu DNS záznamu. Editace takového souboru pak probíhá libovolným textovým editorem a provádí ji správce (administrátor) domény. Nejobvyklejším záznamem je IP adresa, odpovídající doménovému jménu. 11/6/2010 www 4

Každý záznam souboru obsahuje následující položky: název domény TTL záznamu (Time To Live) délka platnosti záznamu v cache (sekundy) třída rodina protokolů, k níž se záznam vztahuje, IN znamená Internet typ záznamu (A, MX, SOA, NS, CNAME,...) hodnota Názvy domén mohou být v DNS uvedeny s tečkou na konci, pak se jedná o plně kvalifikovaný název, obsahující celou cestu od kořenové domény. Tečka na konci reprezentuje tuto kořenovou doménu. Pokud tečka na konci záznamu chybí, jedná se o relativní název a za tento název se doplní jméno aktuální domény. Typy DNS záznamů A záznam: obsahuje IPv4 adresu přiřazenou danému doménovému jménu AAA záznam: obsahuje IPv6 adresu přiřazenou danému doménovému jménu MX záznam: obsahuje informaci o poštovních serverech, obsluhujících danou doménu SOA záznam: zahajující záznam zónového souboru, vyskytuje se právě jednou. Obsahuje jméno primárního serveru, adresu elektronické pošty jejího správce a další položky. NS záznam: jméno autoritativního serveru pro danou doménu CNAME: alias, jiné jméno, používané pro stejnou doménu MX záznamy Pro doručování elektronické pošty jsou z DNS záznamů nejdůležitější záznamy typu MX. V počátcích internetu bylo při doručování elektronické pošty počítáno přímo s doručením na adresu uživatel@počítač. V případě nedostupnosti adresáta poštovní klient několikrát opakoval pokus o doručení a pokud se zprávu doručit nezdařilo, ohlásil chybu a odeslal zprávu zpět odesilateli. Se vznikem dočasných (např. vytáčených) připojení ale tato možnost přestala postačovat a bylo zapotřebí vyvinout mechanismus, umožňující doručení pošty i při dočasné nedostupnosti konkrétního adresáta. Řešením je povolení používat kromě adres typu uživatel@počítač i adresy uživatel@doména, které při nedostupnosti konkrétního počítače umožní zprávu zaslat na některý z poštovních serverů pro danou doménu. Tyto servery jsou specifikovány právě v MX záznamech DNS serverů. Pro podrobnější informace o DNS doporučuji přečíst např. webové stránky http://www.dns info.cz. 11/6/2010 www 5

Protokol SMTP (Simple Mail Transfer Protocol) Protokol SMTP se používá pro přenos e mailových zpráv od klienta na server a pro výměnu e mailů mezi servery. Standardy protokolu jsou popsány v RFC 821 a RFC 2821, protokol byl definován v roce 1982. Protokol je založen na architektuře klient server, komunikace mezi nimi probíhá standartně na TCP portu 25. Jako klient v komunikaci vystupuje Mail User Agent (MUA), který předává zprávu prvnímu Mail Transfer Agentovi (MTA) nebo MTA, který předává zprávu dál. Zpráva je tvořena obálkou a vlastním tělem zprávy, součástí obálky je minimálně adresa uživatele, na jehož popud byla obálka se zprávou sestavena (tzv. originator), a údaj o tom, komu je zasílána (tzv. recipient). Je přitom možné i to, aby jedna a tatáž zpráva měla více příjemců. Další informace, předmět zprávy, datum a čas jejího odeslání, přenášený obsah zprávy jsou součástí těla zprávy. Vlastní komunikace je tvořena sekvencí příkazů a odpovědí, kdy příkazy mají formu klíčových slov, následovaných parametry. Odpovědi jsou číselné, tvořené trojmístnými desítkovými čísly se specifikovaným významem. První číslo z trojice znamená celkový charakter odpovědi, druhá a třetí číslice pak dále odpověď specifikují. Případné textové řetězce odpovědí nejsou standartizovány a slouží pouze jako doplňující informace pro uživatele. Komunikace mezi klientem a serverem má několik fází: 1. Fáze navázání spojení spojení navazuje klient na portu 25, je li vše v pořádku a server je schopen žádost akceptovat, odpoví na navázání spojení číselnou odpovědí 220. 2. Klient dále odešle serveru příkaz HELO se svojí identifikací. Pokud je server ochoten přijímat poštu od tohoto klienta, odpoví číselnou odpovědí 250. 3. Následuje odeslání obálky zprávy. Většinou po příkazu HELO následuje příkaz MAIL FROM se specifikací odesilatele a dále RCPT TO se specifikací příjemce(ů) pošty. 4. Vlastní tělo zprávy je přenášeno příkazem DATA, zpráva je přenášena po řádcích a ukončena řádkou obsahující pouze tečku. 5. Po úspěšném přenosu zprávy následuje potvrzení a ukončení spojení ze strany klienta příkazem QUIT. Na příklad takovéhoto dialogu se můžete podívat např. zde: http://www.earchiv.cz/a94/a444c110.php3 11/6/2010 www 6

Hlavičky SMTP, MIME Původní podoba protokolu SMTP předpokládala pouze přenos jednoduchých textových řetězců. Protokol SMTP tedy přenáší data v textové podobě a člení je pomocí znaků CR a LF na jednotlivé řádky. Pracuje se 7 bitovou znakovou sadou, tedy dokáže pracovat pouze se znaky z původní 128 prvkové abecedy ASCII. Tento způsob je zcela nevyhovující pro přenos národních znaků a zpráv, obsahujících jiné formáty souborů než textové. Z toho důvodu byl protokol SMTP rozšířen o standard MIME (Multipurpose Internet Mail Extensions), který umožňuje přenášet binární soubory a podporuje národní znaky. Dále tento standart dovoluje přiložit k e mailu přílohy různých formátů, např. obrázky, videa, programy atd., připojit k emailu svůj digitální podpis a posílat vícedílné zprávy. Kromě emailu našel tento standart uplatnění např. i v protokolu HTTP. Informace o použitém MIME se k přenášené zprávě přidávají formou hlaviček ve tvaru klíč: parametry. Klíč musí začínat na novém řádku, pokud má parametr více řádků, musí každý z řádků parametru začínat bílým znakem. Mezi standardní hlavičky protokolu SMTP patří například To:, From:, Cc:, Bcc, Subject:, atd. Mezi MIME hlavičky patří například Mime Version:, Content type:, atd. Hlavičky jsou od vlastní zprávy odděleny jedním prázdným řádkem. Přestože rozšíření MIME využívá 8 bitů, při přenosu zprávy dochází ke kódování znaků na 7 bitů. K tomuto kódování se používají různé algoritmy, nejčastěji Base64 nebo Quoted printable. Typ použitého kódování najdeme v MIME hlavičce Content- Transfer-Encoding. Protokol POP3 (Post Office Protocol) Protokol POP3 je protokolem, používaným v architektuře klient/server pro jednoduché a rychlé stahování pošty ze vzdáleného úložiště. Výhodou tohoto protokolu je, že může fugovat i v offline módu, kdy klient není trvale připojen k internetu a připojuje se pouze ve chvíli, kdy chce poštu stáhnou. V případě trvalé konektivity je výhodnější pro příjem elektronické pošty používat protokol SMTP. Standard a použití protokolu POP3 jsou definovány v normě RFC 1939, protokol byl standardizován v roce 1996. Pro komunikaci má protokol POP3 vyhrazen port 110. Komunikace mezi klientem a serverem probíhá pomocí výměny příkazů a odpovědí ve formě textových řetězců. Příkazy protokolu POP3 nerozlišují malá a velká písmena, norma RFC 1939 uvádí seznam 6 povinných a 2 nepovinných, nicméně široce implementovaných příkazů. Za příkazem mohou následovat parametry příkazu, oddělené mezerou. Každý příkaz je ukončen sekvencí CRLF. 11/6/2010 www 7

Odpovědi serveru jsou uvozeny sekvencí +OK nebo ERR, která indikuje stav operace. Následovat pak může textový řetězec s vysvětlením stavu. Víceřádková odpověď končí řádkem, který obsahuje pouze znak tečky a znaky <CRLF>. Stavy protokolu POP3 Protokol POP3 funguje jako stavový automat, přičemž může nabývat následujících stavů: navázání spojení Autorizace Transakce Aktualizace ukončení spojení Autorizace Po otevření TCP spojení zahajuje komunikaci server odesláním stavového řádku +OK. Pak spojení přechází do fáze autorizace, kdy klient musí prokázat oprávnění přistupovat k požadovaným informacím. Pro autorizaci jsou protokolem POP3 definované dvě volitelné metody USER/PASS a APOP. První metoda implementuje autorizaci dvojicí příkazů USER ve tvaru USER jmeno. Pokud server odpoví pozitivně +OK, následuje příkaz PASS heslo. Server porovná zadané jméno a heslo se svými údaji a pokud si odpovídají, přechází komunikace do transakční fáze. Uživatelské jméno i heslo jsou protokolem POP3 přenášeny bez jakékoliv ochrany a dají se tedy odposlechnout. Autorizace pomocí APOP obsahuje jako součást textu za stavem i unikátní časové razítko ve formátu msg id. Klient odešle příkaz APOP jméno hash, kde hash je tvořen výsledkem md5(<razítko serveru>heslo). Server provede stejný hash a výsledky porovná, pokud se shodují, je spojení autorizováno. Transakce V tomto stavu probíhá práce se schránkou uživatele, veškeré příkazy jsou zaznamenány, ale nejsou ještě realizovány. K realizaci všech požadovaných příkazů dochází až ve fázi aktualizace. Každý POP3 server musí povinně implementovat následující příkazy: 11/6/2010 www 8

STAT Zobrazí řádku typu +OK cislo velikost. Udává počet mailů uchovávaných ve schránce a součet jejich velikostí. Do součtů se nepočítají v relaci dříve smazané maily. LIST [n] Zobrazí seznam mailů, na každém řádku jeden. Řádek má tvar cislo velikost. Pokud je uveden nepoviný argument n, zobrazí se jenom jedna řádka s údaji o tomto mailu. RETR n Zobrazí celou zprávu s číslem n, ukončenou tečkou na samostatném řádku. DELE n Označí zprávu s číslem n jako smazanou. NOOP Neprovede nic, vrátí zpět pouze +OK. RSET Zprávy, které byly označené jako smazané, se opět obnoví. Většina POP3 serverů dále implementuje ještě další (nepovinné) příkazy: TOP n l Zobrazí kompletní hlavičky zprávy n, prázdnou řádku a prvních l řádků zprávy. UIDL [n] Zobrazí seznam mailů, na každém řádku jeden. Řádek má tvar cislo uidl, kde uidl je libovolné unikátní identifikační číslo, které server zprávě přiřadí. Toto číslo musí být pro danou zprávu neměnné nejen po čas trvání spojení, ale po čas existence zprávy vůbec. Pokud je uveden nepoviný argument n, zobrazí se jenom jedna řádka s údaji o zprávě s tímto číslem. Po odeslání příkazu QUIT přechází spojení do stavu akutalizace. Aktualizace V této fázi spojení jsou realizovány veškeré příkazy zaznamenané v transakční fázi, poté dojde k uzavření spojení. Dojde li k ukončení spojení dříve, než v transakční fázi (např. vlivem chyby či timeoutu), pak se zaznamenané změny neprovedou. Cvičení k textu: 11/6/2010 www 9

Napište sekvenci příkazů, kterou přečtete zprávu z poštovní schránky, následně ji vymažete ze serveru a korektně ukončíte TCP spojení. Zvolený postup ověřte pomocí klienta služby Telnet. Protokol IMAP (Internet Message Access Protocol) Protokol IMAP, podobně jako protokol POP3, slouží k načítání zpráv z poštovního serveru na klientskou aplikaci. Na rozdíl od protokolu POP3 odkáže ale navíc pracovat i se zprávami ponechanými na poštovním serveru a je optimalizován pro práci s mobilními zařízeními. Umožňuje selektivní načítání zpráv nebo načítání po částech. Podrobnosti a použití protokolu IMAP jsou popsány v dokumentu RFC 2060, případně RFC 3501 (IMAP4). Protokol IMAP pro komunikaci používá TCP port 143. Komunikace probíhá jako výměna příkazů uvozených libovolným identifikátorem a odpovědí na tyto příkazy, přičemž odpověď serveru je vždy uvozena stejným identifikátorem. Tím je zajištěna lepší orientace v odpovědích, zejména při zpracování více příkazů najednou. Server může vygenerovat odpověď, která není spojena s žádným předchozím příkazem, tyto odpovědi se nazývají neoznačené odpovědi a používá se pro ně speciální znak hvězdička *. Příkazy jsou zadávány formou textových řetězců, sada použitelných příkazů a jejich parametrů je podstatně rozsáhlejší, než u protokolu POP3. Některé příkazy protokolu IMAP: LOGIN, AUTHENTICATE CAPABILITIES CREATE, DELETE, RENAME, LIST COPY,FETCH,STORE,CLOSE SEARCH LOGOUT přihlášení uživatele zjištění možností serveru příkazy pro práci se složkami příkazy pro práci se zprávami vyhledávání ve zprávách ukončení spojení Možné odpovědi protokolu IMAP: OK znamená úspěšné dokončení dříve odeslaného příkazu, nebo doplňující údaje k neoznačené odpovědi. NO pokud je odpověď označená, znamená neúspěšné dokončení předchozího příkazu. Jako neoznačená slouží k vyjádření varovných hlášení BAD znamená, je li odpověď označena, nesprávný příkaz, nebo argument, bez označení znamená závažný problém v protokolu 11/6/2010 www 10

PREAUTH vystupuje vždy jako součást neoznačené odpovědi, znamená, že není potřeba zadávat příkaz LOGIN BYE vystupuje vždy jako součást neoznačené odpovědi, znamená, že server ukončil relaci Protokol IMAP funguje jako stavový automat a může nabývat následujících stavů: Vytvoření spojení Neautentizovaný stav Autentizovaný stav Práce se schránkou Ukončení spojení Zdroje: http://cs.wikipedia.org/ http://www.kosek.cz/ http://www.fi.muni.cz http://www.cs.vsb.cz/ http://www.root.cz/ http://www.jmarshall.com/ http://www.aspnet.cz/ http://www.kai.tul.cz http://www.allaboutcookies.org/ http://www.bestpage.cz/ http://www.zive.cz/ http://www.dns info.cz/ 11/6/2010 www 11