Email

Allikas: Kuutõrvaja

Sissejuhatus

E-posti teenus võimaldab erinevate süsteemide kasutajatel võrgus üksteisega vahetada sõnumeid ehk e-posti (ingl. k. email). E-posti vahetamine eeldab, et kasutajal on konto mõnes e-posti teenust pakkuvas serveris. Selleks, et oma postiaadressile tulnud kirju lugeda ning ise kirju saata, peab ta teadma selle postiserveri nime, oma kasutajanime ning parooli. Kasutajal on võimalik tarvitada mõnda postiprogrammi

Kui asutusele on omistatud domeeninimi, näiteks loomaaed.ee., asutuse serverisse, näiteks vant.loomaaed.ee. on tehtud kasutaja priit ja server vant.loomaaed.ee. toimib ka postimasinana, siis on loomulik, et Priidu e-posti aadress on

priit@loomaaed.ee

Seda aadressi loetakse 'priit ät loomaaed ee'. Inglise keeles märgib @ sõna 'at' nagu lauses 'I am at home'.

Postisüsteemi kasutamiseks peab igal osalisel olema unikaalne postiaadress.

Postisüsteem

Postisüsteemi toimimise tagavad sobivalt seadistatud ja võrku ühendatud postimasinad. Postimasinates töötavad tavaliselt lisaks postiserverile ka abiprogrammid, mis võimaldavad erinevatel klientidel oma kirjadega tegeleda.

Erinevad programmid kasutavad andmevahetuseks erinevaid protokolle.


                                   ella
                                       _____
                                      |     |
                                      |     |
                                      |_____|
   marta                                 |
      _____               .  .. )        | SMTP
     |     | SMTP   (            )_______|
     |     |-----(     INTERNET   )
     |_____|        (            )____
    ^   |  v            (   ,, )      |  SMTP
   SMTP | IMAP                        |
    ^   |  v                        __|__
|--|----|-----|--|                 |     |   pruu
   |          |                    |     |
  _|_        _|_                   |_____|
 |   |  ... |   |                     |
 |___|      |___|                     | Telnet
                                      |
 IMAPi kliendid           |--|--------|-------------|----|
                             |                      |
                            _|_                    _|_
                           |   |    ...           |   |
                           |___|                  |___|

                                  Telneti kliendid

Postimasinad marta, pruu ja ella kasutavad omavahelisel suhtlemisel postivahetusprotokolli SMTP (Simple Mail Transport Protocol). IMAP'i klientprogramm, näiteks Netscape Messanger kasutab posti saatmisel SMTP ja vastuvõtmisel IMAPi protoll. Viimane eeldab, et postimasinas marta töötab lisaks ka IMAPi server. Kuna postimasinas pruu ei ole IMAP'i serverit, siis oma postiga tegelemiseks peavad kasutajad esmalt postimasinasse sisse logima ning siis kasutama näiteks programme Pine, Elm või Mutt.

E-kiri

E-posti all mõeldakse arvutite abil sõnumite vahetamist üldiselt. Üks konkreetne sõnum on e-kiri. Järjest enam räägitakse ka lihtsalt postist ja kirjast pidades silmas e-posti ja e-kirja.

E-kiri koosneb päisest ning kirjaosast. Päis ja kirjaosa eraldatakse üksteisest kokkuleppeliselt ühe tühja reaga. Kirja päises on muu tehnilise info seas

kirja saaja aadress 
kirja saatja aadress 
teema (ingl. k. subject) 
kirja postitamise aeg 

Kirjaosa moodustab sõnum ise, kuid spetsiaalselt formaaditult on seal ka kirja lisad (ingl. k. attachment).

Esitame näitena e-kirja

Return-Path: <priit@loomaaed.ee>
Received: from vant.loomaaed.ee (root@vant.loomaaed.ee [193.40.10.130])
        by mail.zoo.tartu.ee (8.9.3/8.9.3) with ESMTP id NAA67097
        for ; Mon, 13 Aug 2001 13:21:56 +0200 (EET)
Received: (from priit@localhost)
        by vant.loomaaed.ee (8.9.3/8.9.3) id NAA13253
        for mart@zoo.tartu.ee; Mon, 13 Aug 2001 13:20:47 +0200
Date: Mon, 13 Aug 2001 13:20:47 +0200
Message-Id: <200108131120.NAA13253@vant.loomaaed.ee>
From: priit@loomaaed.ee
To: mart@zoo.tartu.ee
Subject: TERE

Kuidas on?

Lisaks mainitud saatja (From: ), saaja (To: ) ja teema (Subject: ) ridadele on alati kirja päises ka

aeg (Date: ) - kirja väljasaatmise aeg 
id (Message-ID: ) - unikaalne järgnevus- mida kasutatakse kirja identifitseerimiseks internetis; näiteks selleks, et üks kiri postiserverite vahel     lõpmata kauaks ringlema ei jääks 
Return-Path - antud juhul on see kirja saatja aadress, millele saadetakse automaatselt vastus, kui kirja saatmine ebaõnnestub (nn bounce message) 
vastuvõetud (Received: ) - selle rea lisab kirjale iga postimasin juurde, millest kiri läbi käib; toodud on from - by - for järgnevus. 

Postiprogrammiga Pine saab e-kirja päist näha valides klaviatuurilt H. See eeldab, et Pine konfiguratsioonist on seatud 'enable full-headers'.

E-posti kirja struktuurile esitatud nõuded on kirjas dokumendis RFC 822 (Request For Comments) ning hilisemates seda dokumenti parandavates ning täiendavates RFC'des.

SMTP postivahetusprotokoll

Järgnevate näidete läbitegemiseks eeldame, et teil on kasutada töötav postimasin.

E-posti serverid käivad tavaliselt TCP pordil 25 ning kasutavad SMTP (Simple Mail Transport Protocol) protokolli. Tavaliselt pole selle protokolli üksikasjad olulised ei e-posti kasutajaile ega süsteemi administraatorile. Kuna tegu on e-posti suhteliselt madala tasemega, siis aitab protokolli tundmine teinekord aru saada, kus on mittetöötavas süsteemis viga.

Näiteks kasutame programmi sendmail kirja saatmiseks verbaalses režiimis. Saadame kirja aadressil priit@zoo.tartu.ee

bash:~$ sendmail -v mart@zoo.tartu.ee
From: priit@loomaaed.ee
To: mart@zoo.tartu.ee
Subject: TERE

Kuidas on?
.
priit@zoo.tartu.ee... Connecting to mail.zoo.tartu.ee. via esmtp...
220 mail.zoo.tartu.ee ESMTP Sendmail-hah-hah-ha...  8.9.3/8.9.3; Mon, 13
Aug 2001 13:21:56 +0200 (EET)
>>> EHLO vant.loomaaed.ee
250-mail.zoo.tartu.ee Hello root@vant.loomaaed.ee [193.40.10.130], pleased to
meet you
250-EXPN
250-VERB
250-8BITMIME
250-SIZE
250-DSN
250-ONEX
250-ETRN
250-XUSR
250 HELP
>>> MAIL From:<priit@vant.loomaaed.ee> SIZE=68
250 <priit@vant.loomaaed.ee>... Sender ok
>>> RCPT To:<mart@zoo.tartu.ee>
250 <mart@zoo.tartu.ee>... Recipient ok
>>> DATA
354 Enter mail, end with "." on a line by itself
>>> .
250 NAA67097 Message accepted for delivery
mart@zoo.tartu.ee... Sent (NAA67097 Message accepted for delivery)
Closing connection to mail.zoo.tartu.ee.
>>> QUIT
221 mail.zoo.tartu.ee closing connection

Siit on näha, kuidas 2 postiserverit omavahel suhtlevad. '>>>' märkidega ridadele vastab klient ja ülejäänutele server. Oluline on jätta kirja päise ja kirjaosa vahele 1 tühi rida ning lõpetada kirjaosa reaga, mis koosneb vaid punktist rea alguses.

Sarnase andmevahetuse saab läbi viia, kasutades programmi Telnet ning võttes ühendust serveri pordiga 25

bash$ telnet postimasin.ee 25
...

Postivahetusprogrammi seadistamisel saab vajadusel näidata, et kirjutataks automaatselt ümber kirja päise väljad, näiteks From: kuna soovitakse, et postimasinast väljunud kirja From: real oleks kirjas priit@loomaaed.ee, mitte priit@vant.loomaaed.ee.

Lisaks saab From: real olevaid väärtusi ka postiprogrammist muuta. Näiteks Pine'i puhul valides seadistustest 'personal-name' ja 'user-domain'. Märgime, postiserveri seadistustest saab põhimõtteliselt muuta kõiki headeri välju, mida tavaliselt seda siiski ei tehta. Näiteks muudame From: ja To: ridu kirja päises

bash:~$ sendmail -f linux@linux.ee mart@zoo.tartu.ee
From: napoleon@louis.IV
To: tsaar@peeter.I
Subject: TERE

Kuidas on?
.

Kuigi -f võtme abil saab Return-Pathi muuta, saab vaadates kirja päist Received ridade järgi ikkagi kindlaks teha kirja tegeliku saatmiskoha

Return-Path: <linux@linux.ee>
Received: from vant.loomaaed.ee (root@vant.loomaaed.ee [193.40.13.130])
        by mail.zoo.tartu.ee (8.9.3/8.9.3) with ESMTP id NAA67371
        for <mart@zoo.tartu.ee>; Mon, 13 Aug 2001 13:41:03 +0200 (EET)
Received: (from priit@localhost)
        by vant.loomaaed.ee (8.9.3/8.9.3) id NAA13593
        for mart@zoo.tartu.ee; Mon, 13 Aug 2001 13:39:53 +0200
Date: Mon, 13 Aug 2001 13:39:53 +0200
Message-Id:<200108131139.NAA13593@vant.loomaaed.ee>
X-Authentication-Warning: vant.loomaaed.ee: priit set sender to linux@linux.ee using -f
From: napoleon@louis.IV
To: tsaar@peeter.I
Subject: TERE 

Kuidas on?

Toodud näide demonstreerib, et posti liikumiseks sihtpunkti, ei pea tingimata kirja päise To: ja From: read vastama tegeliku saatja ja saaja omadele.

MIME

MIME (Multipurpose Internet Mail Extensions) on standard, mis sõnastab reeglid e-postiga saadetavate sõnumite formateerimiseks. Praktiliselt teeb MIME kasutamine võimalikuks e-postiga saata kirja lisasid, milleks võivad olla põhimõtteliselt suvalist tüüpi andmed: pilt, heli, programmid jne. Mittetekstilised andmed konverteeritakse, kasutades Base64 kodeeringut tekstiliseks.

Näiteks lisaga kirja päises viitavad MIME kasutamisele sellised read

....
MIME-Version: 1.0
Content-Type: MULTIPART/MIXED; BOUNDARY="683770381-1861782766-999164341=:24680"
Parts/Attachments:
   1 Shown     20 lines  Text
   2          308 KB     Image, ""
----------------------------------------

Antud juhul koosneb kiri kahest osast: tekstilisest ja pildist. Kui postiprogramm oskab lisaga ümber käia, siis ta teeb seda, näiteks näitab Netscape Messenger pilte. Kui postiprogramm ei oska iseseisvalt lisa käsitleda, siis saab lisa salvestada faili ning seda kasutada vastava programmiga.

MIME kohta saab infot aadressilt http://hunnysoft.com/mime/.