email
Email
email
Email – 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 POP or IMAP MSGFMT (RFC822,...) a MIME
Email – splitting & relaying
1
relaying vs. forwarding
Open relay
MTA, který přijme a přepošle zprávu od „kohokoliv“ „komukoliv“ Relaying – předávání zprávy mezi MTA Původně standardní, s příchodem spamu se stal nežádoucí Forwarding – přeposlání mailu z mailové schránky do jiné Mail server nakonfigurovaný jako open relay bývá blokován v rámci protispamových opatření
Využití DNS
Využití DNS
Součástí DNS jsou speciální záznamy – MX. MTA obdrží zprávu pro
[email protected]: kontaktuje DNS pro zjištění MX záznamu pro bar.net. Například dostane odpověď mail.bar.net. Dále proběhne standardní DNS dotaz pro zjištění IP adresy.
MX záznamů pro doménu bývá zpravidla více, zpravidla s uvedenou prioritou. Pokud mail nelze doručit na primární mail server, vyhledá se v DNS sekundární mail server, kde se zpráva dočasně uloží, a proběhne několik pokusů o doručení na primární mail server (opět se vyhledá v DNS).
Pak je mail odeslán na standardní port pro protokol SMTP (25).
Formát zprávy:
Formát zprávy: Email se skládá z obálky a samotn zprávy, která má záhlaví a tělo zprávy. Obálka obsahuje informace nutné pro přenos zprávy a je generována během přenosu. Zpráva obsahuje informace od odesilatele (koncovému) příjemci, teoreticky by se v průběhu přenosu neměla měnit. Některé údaje jsou obsaženy v obálce i záhlaví – např. Adresa odesilatele a příjemce.
2
Formát zprávy:
Formát zprávy:
Příklad: Když pošleme mail na mailing list, je pak přesměrován na jednotlivé členy. Záhlaví obsahuje původního odesilatele a jako příjemce je uveden mailing list. Obálka obsahuje různé informace:
Formát záhlaví:
: Definovaná záhlaví:RFC 822 Date - datum a čas kdy byl email odeslán klientem (pov.) From: - mailová adresa (pov.) Reply-To - adresa pro zaslání odpovědi (vol.) To: - adresy příjemců Cc:, Bcc:, - volitelné Message-ID – jedinečný identifikátor zprávy (pov.) In-Replay-To – identifikátor původní zprávy (vol.) Subject – volitelné Received – trasovací záznamy vkládané při doručování mailu Formát záhlaví
MIME
Mailové systémy před rokem 1992 zpracovávaly maily obsahující pouze text v 7 bitovém ASCII.
MIME
Tělo zprávy se může skládat z více částí entit:
V roce 1992 byl přidán standard MIME, který umožňuje: vícenásobné objekty v jedné zprávě - neomezenou délku řádku a zprávy - jiné znakové sady - posílání binárních dat - posílání audia, videa a multimedií - ....
3
MIME headers
MIME Heading Extensions
Každá entita má své záhlaví
Content-Type: Určuje typ dat
MIME-Version: povinné, informace o použití MIME
Content-Type: TEXT Content-Type:APPLICATION - binární data a aplikační data APPLICATION/POSTSCRIPT. Content-Type: MESSAGE – pro email v emailu Content-Type: IMAGE bitmapa Content-Type: AUDIO Content-Type: VIDEO
Content type: informace o typu dat, multipart/simple Content-Transfer-Encoding: informace o kódování použitém pro přenos (jen pro simple) Content-ID
Content-Type: MULTIPARTED (skládá se z několika entit)
Content-Description
MIME - encoding
Struktura mailu
MIME upraví formát dat tak, aby mohla být přenesena v systému 7 bitového ASCII. Používá dvě metody base64 a quoted-printable.
MIME - encoding
Base64 použije 4 znaky pro reprezentaci 3 8birových hodnot (24 bitů je rozděleno do 4 skupin po 6 bitech) Např: 212 39 247 (původní kódy znaků) 11010100 00100111 11110111 (binární podoba) 110101 000010 011111 110111 (změna rozdělení) 53 2 31 55 1 C F 3 (po změně kódování)
MIME - encoding
quoted-printable Kód znaku je zapsán v hexadecimální podobě a před něj je doplněno = Např: 10 (znak CR) =OD (po změně kódování) Pozn: Díky změně kódování dochází k nárůstu velikosti mailu
4
MIME – kódování v záhlaví mailu
MIME také definuje kódování znaků v záhlaví (RFC 2047) Položka záhlaví je nahrazena: ?<encoding>?<encoded-text>?> Subject: =?iso-8859-2?Q?Nov=E1=20verze=20domovsk =E9=20str=E1nky=20Seznam=2Ecz?=
SMTP
SMTP
Základní SMTP příkazy: Pro komunikaci mezi agenty se používá protokol SMTP. SMTP – řízení přenosu – specifikuje údaje v obálce emailu – session-oriented protocol
HELO (EHLO)–> zahajuje session, identifikace odesílajícího počítače MAIL FROM: -> zahajuje proces zadávání mailu RCTP TO: -> příjemce mailu DATA -> označuje začátek těla mailu, konec je označen tečkou na samostatném řádku QUIT -> ukončení SMTP session
odeslání emailu přes telnet telnet mail.company.com 25 220 welcome to mail.company.com STMP version 1.3.0 HELO johnny.home.com 250 mail.company.com Hello johnny.home.com MAIL FROM: [email protected] 250 [email protected] Sender ok RCPT TO: [email protected] 250 [email protected] Recipient ok DATA Subject: Client not pleased The client is not pleased that there were no Cokes in the vending machine; on attempting to placate client with Nachos - the vending machine ate client's money without dispensing said snack.
přřenos zprávy ke koncovému přříjemci.
v SMTP přenosu má kontrolu nad přenosem odesilatel, což neni použítelné pro UA příjemce, který nemusí být online a připraven pro přijetí zprávy. Proto je potřeba protokol, který dá kontrolu UA. Nejvíce se používá POP a IMAP. Od SMTP se liší také tím, že je vyžadována identifikace, která má zabránit čtení cizích zpráv.
. 250 Message accepted for delivery QUIT
5
přečtení emailu přes telnet (1/3) přřenos zprávy ke koncovému přříjemci.
POP (Post Office Protocol) – slouží ke stažení mailu na počítač uživatele IMAP – interaktivní, uživatelé mohou manipulovat s poštou uloženou na serveru, umožňuje například prohledávání zpráv přímo na serveru ...
přečtení emailu přes telnet (2/3) RETR 2 +OK 2045 octets X-Apparently-To: [email protected] via 206.xx.11.111; Thu, 09 Sep 2004 23:02:52 -0700 XOriginating-IP: [216.xx.11.111] Return-Path: Received: from 206.xx.111.112 (HELO mail.company2.com) (216.xxx.131.194) by mail.sender.com with SMTP; Thu, 09 Sep 2004 23:02:51 -0700 From: "Get rich" [email protected] To: [email protected] Subject: Allergies bothering you? Buy drugs online.
telnet mail.company.com 110 +OK POP3 welcome to Company mail server USER johnny.lunchpail +OK welcome PASS sandwich +OK maildrop locked and ready STAT +OK 4 44767 LIST +OK 4 messages (44767 octets) 1 34012 2 2045 3 2903 4 5807
přečtení emailu přes telnet (3/3)
DELE 3 +OK msg deleted RSET +OK DELE 2 +OK msg deleted QUIT
Why don't you buy drugs from our website. .
6