E-mail

Popis služby, historie

  • E-mail – elektronická pošta – odesílání, doručování a přijímání zpráv je realizováno pomocí datové komunikační sítě.
  • Historický kontext
    • První e-mailová komunikace probíhala v polovině 60. let 20. století na mainframových počítačích (sdílené prostředky, použití terminálů k přístupu) na MIT.
    • První síťový e-mail pravděpodobně provozován již v r. 1966 na dosud oddělených lokálních sítích. Mezisíťové využití e-mailu bylo realizovatelné až po vzniku ARPANETu. V 70. letech však dosud neexistovaly samostatné datové spoje a pro posílání e-mailu se využívaly telefonní linky.
    • Ray Tomlinson – 1971 první využívá znak @ a své programy pro zasílání SNDMSG a READMAIL.
    • Až do masové komercionalizace Internetu v polovině 90. let 20. století se e-mail využívá spíše intranetově. Mezisíťový email byl do té doby nucen používat adresy s cestou (přeskoky s adresami sítí).
    • Komercionalizace umožnila nabízet webovou službu také ve formě tzv. WebMail. Zprvu bylo mnohem běžnější využívat e-mailovou službu pomocí klientů (Outlook apod.).

Komunikační model

  • model založen na postavení server-client
  • E-mailový software
    • MUA – Mail User Agent (client)
    • MTA – Mail Transfer Agent (serverová aplikace, která se stará o doručování zpráv)
    • MDA – Mail Delivery Agent (serverová aplikace, která se stará o umístění do správné uživatelské schránky – složky).
  • E-mailový server – je vybaven programy MTA a MDA. Při odesílání MTA předává zprávy vzdálenému MTA a ten pak využívá vlastní MDA.
  • E-mailový client – je koncová pracovní stanice vybavena klientskou aplikací (např. Outlook). Pomocí níž jsou zprávy komponovány a doplněny potřebnými hlavičkami pro odeslání. Slouží také pro zobrazení příchozích zpráv uživateli.
  • Alternativa clienta u WebMailu – klientskou aplikací je webová aplikace naprogramovaná např. v PHP, ASP, Perl apod. Jednotlivé skriptovací jazyky běží na straně webového serveru a pomocí funkčního rozšíření mohou realizovat e-mailovou komunikaci se svými MTA. Umožňují ji také číst a manipulovat s obsahem uživatelské schránky.

Protokoly služby

  • SMTP (od r. 1982) – Simple Mail Transfer Protocol – slouží k předávání zpráv mezi clientem a MTA odesílatele a mezi jednotlivými MTA. Pro předávání mezi odesílajícím MTA a přijímajícím MTA je využito přímé spojení pomocí TCP na portu 25. Pro spojení odesílající clientské aplikace a MTA je využit TCP na portu 587.
  • ESMTP (od r. 2001) – novější verze obsahující příkaz EHLO, 8BITMIME, …
  • POP3 – (od r. 1996) – Post Office Protocol – slouží ke stahování doručené pošty do clientské aplikace. Komunikace je realizována na TCP portu 110. Protokol tedy umožnil čtení zpráv v offline režimu, jelikož ze serveru byly přesouvány celé emailové zprávy.
  • IMAP (verze 4rev1 od r. 1996) – Internet Message Access Protocol – starší verze již z 80. let 20. stol. Slouží ke vzdálenému přístupu k přijatým e-mailovým zprávám. Na rozdíl od POP3 umožňuje synchronizovanou manipulaci s poštovním serverem. Umožňuje tedy prohlížení online i offline čtení zpráv. Obsahuje vylepšení např. podporu MIME formátů (práci s přílohami), informace o stavu zprávy (potvrzení přečtení protistranou). Protokol je však náročnější oproti POP3. Dnes je podporován téměř všemi poskytovateli e-mailových služeb. Komunikace mezi clientem a poštovním serverem probíhá standardně na TCP portu 143.

Způsob doručování

  1. Uživatel zkomponuje zprávu pomocí e-mailového clienta a aplikace doplní patřičné hlavičky (kódování, adresy, předmět …).
  2. Zpráva je předána poštovnímu serveru odesílatele pomocí SMTP.
  3. MTA zjistí z adresy příjemce (adresa za zavináčem) jmennou adresu serveru příjemce – doménu. Jelikož e-mailové zprávy mohou být pro danou doménu předávány na jiné servery než webové, vyhledá pomocí DNS patřičnou adresu pro mail exchange server dané domény.
  4. MTA získá MX záznam pro doručení e-mailu pro danou doménu (prostřednictvím DNS odpovědi).
  5. MTA odesílatele se pokusí předat zprávu MTA příjemce pomocí SMTP. Pokud není možné zprávu doručit, MTA příjemce odpoví pomocí bounce message, ve které je uvedena příčina nedoručení.
  6. Mail exchange server pomocí MDA umístí zprávu do správné schránky příjemce.
  7. Příjemce si pak může e-mailovou zprávu kdykoliv stáhnout pomocí POP3 nebo IMAP do svého e-mailového clienta.

Struktura a používání emailu

  • E-mailové zprávy byly původně navrženy pro 7-bitový ASCII přenos. Při 8-bitovém přenosu docházelo k problémům s formátováním zpráv. Proto byl později navržen standard MIME.
  • MIME standard (Multipurpose Internet Mail Extensions) – umožňuje zprávy kódovat pomocí různých znakových sad, pomocí oddělovače strukturovat zprávu s přílohami. Lze tak textovou zprávu rozdělit na sekce, ve kterých je příloha uložena v binární podobě. E-mailová zpráva musí obsahovat metainformace popisující druh dat pro každou sekci. Lze tedy také rozlišovat:
    • text/plain – obyčejný neformátovaný text
    • text/html – formátovaný text pomocí HTML značek
    • jiné formáty: image/jpeg apod.
  • E-mailové hlavičky – standard MIME specifikuje formát hlavičky a těla zprávy. Jednotlivé položky jsou (podle Seznam.cz):
    • X-Country (země, odkud byl e-mail odeslán)
    • Message-Id (číslo zprávy, využitelné především pro správce emailového serveru)
    • Content-Type (kódování obsahu a znaková sada)
    • X-Mailer (identifikace programu, který byl použit pro odeslání)
    • From (adresa odesilatele)
    • Date (datum a čas odeslání zprávy)
    • Received (adresa e-mailového serveru a IP adresa osoby, která email odeslala)
    • Subject (předmět uvedený ve zprávě)
    • To (adresa příjemce)
    • další Received (ukazuje cestu, kudy e-mail samotný putoval)
    • X-Spam-Status (oznámkování Antispamového serveru, zda je tento konkrétní email možný spam. Přesné informace o bodování jsou interní informací)
    • Reply-To (označuje, jakou má odesilatel nastavenu adresu pro odpověď)
    • DKIM (informace o DKIM podpisu odesílatele; potvrzuje identitu odesílatele zprávy)
  • Distribuční seznamy – clientské aplikace umožňují vytvářet skupiny adres pro hromadné adresování
  • Podpis – clientské aplikace umožňují vytvořit automatizovaný blok (s vlastní vizitkou), který se vždy přikládá na konec těla zprávy. (neplést si s elektronickým podpisem)
  • SPAM – jedná se o nevyžádanou poštu. Je třeba si uvědomit, že zveřejněním emailové adresy na webu může být strojově zpracována spamboty. Je třeba využívat takové prvky ochrany, které zabrání strojovému zpracování.
  • Hoax – typ SPAMu, který je často řetězen mailovými příjemci
  • Nepravá adresa odesílatele – je nejčastější technika podvodů pomocí emailů (např. phishing). Důvěryhodnost odesílatele lze dnes ověřovat pomocí metod DKIM.
Ukázka mailové hlavičky, za níž následují data těla.