Elektronická pošta - SMTP

Emil Míček, xmicek@fi.muni.cz


Obsah


SMTP

Princip fungování

SMTP (Simple Mail Transfer Protokol) - popsán v RFC 2821, aktualizuje a doplňuje informace z RFC 821. Cíl: efektivní a spolehlivý přenos zprávy od odesílatele k příjemci nezávislý na přenosovém subsystému. SMTP vyžaduje pouze spolehlivý uspořádaný datový kanál (nejčastěji TCP). Důležitá vlastnost SMTP je schopnost doručit mail přes několik sítí tzv. SMTP mail relaying. Mail může projít přes několik relay nebo gatewaz serverů, další článek přenosu se volí pomocí Mail eXchange (MX) mechanismu v DNS subsystému.

Základní struktura SMTP komunikace vypadá následovně.

               +----------+                +----------+
   +------+    |          |                |          |
   | User |<-->|          |      SMTP      |          |
   +------+    |  Client- |Commands/Replies| Server-  |
   +------+    |   SMTP   |<-------------->|    SMTP  |    +------+
   | File |<-->|          |    and Mail    |          |<-->| File |
   |System|    |          |                |          |    |System|
   +------+    +----------+                +----------+    +------+
                SMTP client                SMTP server

MX záznamy vs A záznamy

Při přenosu naváže klient spojení se serverem a má za ůkol poslat správu na jeden či více serverů, nebo oznámit chybu. Klient resolvuje název domény buď na MX záznam mezilehlého SMTP serveru, nebo (pokud žádný MX záznam neexistuje) na A záznam cílového stroje.

SMTP příkazy

Transakce se skládá z posloupnosti SMTP příkazů identifikujících odesílatele a příjemce a z těla samotného mailu. Na každý příkaz odpoví server buď úspěchem, nebo dočasnou či trvalou chybou.

Předmětem SMTP transakce je tzv Zpráva (Mail Object), která se skládá z obálky a obsahu. Obálka: série SMTP příkazů, příkaz je složen ze slovesa následovaného mezerou, případně argumenty, odpověď začíná trojciferným číselným kódem.

Některé příkazy: