E-posti

Allikas: Kuutõrvaja

Sissejuhatus

Käesolevas palas kirjeldatakse, kuidas seada tööle e-posti vahetamine ühe aeg-ajalt internetti lülitatava arvuti kodu.maa kasutajate jaoks. Tavaliselt ilmneb selle järgi vajadus näiteks kodus. Eeldame, et

  • arvutis kodu.maa on näiteks kasutaja priit ning ta saab tekitada kasutaja-PPP abil internetiühendust
  • postiserveris post.zoo.tartu.ee on samuti kasutaja priit, e-posti aadressiga priit@zoo.tartu.ee

Süsteem seisneb selles, et kui kasutaja on loonud ühenduse, siis kopeerib ta programmiga Fetchmail talle saabunud kirjad postiserverist ning saadab programmiga Sendmail välja enne ühenduse tekitamist valmiskirjutatud ja lokaalselt ära saadetud kirjad

   kodu.maa                                post.zoo.tartu.ee
   ______                                  ______
  |      |                                |      |                              ___(  ..=
  |      |   <--- Fetchmail ----          |      |                           (.             ))
  |      |                                |      |                         ((    Internet       )
  |      |      --------- Sendmail ---->  |      |  <--- Sendmail --->   (  
  |______|                                |______|                            (     .__     ))
                                                                                     (((


Sellise asjakorralduse puhul saab kirju lugeda, kirjutada ja lokaalselt ära saata ilma internetiühenduses olemata, kusjuures e-postiga tegelemisel saab kasutada paljusid standardseid abivahendeid, näiteks Procmaili. Ainult postiserveriga kirjade vahetamise ajaks tuleb ühendus tekitada.

Postiserver peab lubama seejuures nn relay'mist. Selleks peab näiteks kirjutama postiserverisse faili /etc/mail/mail-relay sisuga isp.ee

Sendmail

Programm Sendmail tuleb konfigureerida selliselt, et

  • kodu.maa kasutajate omavaheline kirjavahetus toimiks kohapeal
  • välja saadetud kirjad kopeeritakse Sendmaili sappa (ingl. k. queue), et nad saata ühenduse tekkimisel edasi postimasinale post.zoo.tartu.ee
  • kohalikud e-post aadressid (priit@kodu.maa) asendatakse kirjade edasisaatmisel postiserverile vastavate aadressidega (priit@zoo.tartu.ee)

Vajadusel paigaldage Sendmail ning konfiguratsioonifaili loomiseks vajalik materjal

bash# cd /cdrom/src
bash# cat scontrib.?? | tar xzf - -C /usr/src contrib/sendmail

Ning seejärel koostage sobiv Sendmaili konfiguratsioonifaili kavand

bash# cd /usr/src/contrib/sendmail/cf/cf
bash# cat kodu.maa.mc
VERSIONID(`kodu.maa.mc version 1.0')
OSTYPE(bsd4.4)dnl
FEATURE(nouucp)dnl
MAILER(local)dnl
MAILER(smtp)dnl
Cwlocalhost
Cwkodu.maa
MASQUERADE_AS(`zoo.tartu.ee')dnl
FEATURE(allmasquerade)dnl
FEATURE(masquerade_envelope)dnl
FEATURE(nocanonify)dnl
FEATURE(nodns)dnl
define(SMART_HOST, `zoo.tartu.ee')
Dmkroon.alt
define(�onfDOMAIN_NAME',`kodu.maa')dnl
define(�onfDELIVERY_MODE',`Deferred')dnl

Teisendage see kavand konfiguratsioonifailiks ning kopeerige õigesse asukohta, näiteks

bash# make kodu.maa.cf
bash# cp kodu.maa.cf /etc/mail/sendmail.cf

Sendmaili deemon tuleb käivitada nii, et ta ei püüaks lokaalselt ärasaadetud kirju kohe edasi saata, vaid jätaks nad sappa, näiteks selliselt

bash# sendmail -bd

Sabas olevaid kirju saab vaadata käsuga mailq

bash# mailq

ning kui ühendus on olemas saab sabas olevad kirjad edasi saata e-posti masinale

bash# sendmail -q

Et arvuti käivitamisel automaatselt käivituks ka võtmetega -bd Sendmaili deemon, peab sisalduma süsteemi konfiguratsioonifailis /etc/rc.conf rida

sendmail_flags="-bd"
Fetchmail

Fetchmaili abil saab kasutaja kopeerida IMAP ja POP3 toetavatest e-posti serveritest kirju. Näiteks omades sellist Fetchmaili konfiguratsioonifaili

poll post.zoo.tartu.ee username "priit" password "priiduparool"

piisab anda käsk fetchmail

bash$ fetchmail

Automatiseerimine

Kasutaja PPP-d tarvitades saab vahetult peale ühenduse loomist lasta käivitada ühendust loova kasutaja õigustes programme, mis on kirjeldatud failis /etc/ppp/ppp.linkup. Kirjade vahetamiseks võib sinna kirjutada näiteks read

isp:
  !bg sendmail -q
  !bg fetchmail

kusjuures sektsiooni nimi (isp) peab algama vasakust positsioonist ning selles sisalduvad read vähemalt ühe tühiku või tabulaatori kauguselt vasakust servast.

Nii pruugib kasutajal vaid luua ühendus ning tema kirjad saadetakse ja võetakse vastu automaatselt.