Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Anketa

Ktorý mail klient používate?

MS Outlook
Thunderbird
Evolution
Kmail
Mutt
Pine
iný...
je ich viac...
žiadny...

Autor Téma: Pošta a správa pošty v konzole - Mutt + Exim4 + Procmail + Fetchmail + Vim  (Přečteno 9019 krát)

Juraj

  • Stálý člen
  • **
  • Příspěvků: 653
Jedná sa o jednoduchý návod, určený tým, ktorým postačuje na prácu jeden e-mailový účet od ISP poskytovateľa. Návod by mal slúžiť ako demonštrácia práce s poštou v konzole v duchu linuxu. Teda, že každá aplikácia robí iba to, čo má a robí to dobre v kooperácii s ostatnými aplikáciami.

Všetko som odskúšal na Debiane, návod by mal byť plne funkčný aj v Ubuntu (niektoré príkazy som preto trochu upravil). Ak by v Ubuntu niečo viazlo, pripomienky sú vítané ;)

Pojmy

Mutt - je program pre čítanie pošty. Je malý ale má veľa užitočných funkcií. Je celoobrazovkový a na unixové pomery komfortný. Nápoveda v menu je prehľadná a dostatočná. Menu aj s nápovedou sú čiastočne preložené do češtiny a slovenčiny. Mutt patril a stále patrí medzi obľúbené nástroje bradatých linuxových guru. Jeho najväčším konkurentom bol a snáď aj stále je program Pine.
Domovská stránka: http://www.mutt.org/


Mutt - listovanie


Mutt - email


Mutt - nápoveda

Exim4 - je vysoko konfigurovateľný a flexibilný MTA (Mail Transfer Agent je program, ktorý sa stará o doručovanie pošty z jedného účtu na iný.), má k dispozíci funkcie, ktoré iným MTA chýbajú. Na rozdiel od Sendmailu má zrozumitelné konfiguračné súbory, čo je dôvod, prečo ho niektorí administrátori preferujú.
Domovská stránka: http://www.exim.org/

Procmail - je Mail Delivery Agents, ktorých úlohou je doručovanie emailov. V praxi to vypadá tak, že email obdrží MTA (Mail Transfer Agent - v našom prípade exim4) a ten sa podľa niekoľkých údajov (nastavení DNS, konfigurácie SMTP a domény adresáta) rozhoduje, či sa jedná o email k lokálnemu doručeniu alebo či ho má predať ďalej. Ak sa jedná o email pre lokálne doručenie, prichádza k slovu MDA, teda v našom prípade Procmail. Ten umiestni email do predom určeného mailboxu podľa adresáta a môže aj filtrovať prichádzajúce správy.
Domovská stránka: http://www.procmail.org/

Fetchmail - je aplikácia na získavanie a presmerovanie emailov. Podporuje všetky súčasné emailové protokoly POP2, POP3, RPOP, APOP, KPOP, všetky druhy IMAP, ESMTP ETRN ,IPv6. a IPSEC.
Domovská stránka: http://fetchmail.berlios.de/

Vim - je úžasne efektívny a výkonný program slúžiaci na prípravu textov. Jedná sa o obohatený editor vi, ktorý je súčasťou každého UNIXu. Mutt ho používa na písanie e-mailov.
Domovská stránka: http://www.vim.org/

Muttprint - umožňuje tlač z Muttu a ostatných mailových klientov ako XFmail alebo Pine.
Domovská stránka: http://muttprint.sourceforge.net/

Abook - adresár spolupracujúci s Muttom.
Domovská stránka: http://abook.sourceforge.net/


Abook - adresár je zatiaľ prázdny

urlview - je program na extrahovanie URL z textu.
 
Antiword - je prehliadač a konvertor doc súborov z MS Wordu. Vie konvertovať súbory z Wordu 2, 6, 7, 97, 2000, 2002, 2003 do textu a PostScriptu.
Domovská stránka: http://www.winfield.demon.nl/

pdftotext - je aplikácia na prevod pdf do textu. Je súčasťou balíka xpdf.
Domovská stránka: http://www.foolabs.com/xpdf/ 

Najskôr nainštalujeme veci ktoré potrebujeme

Kód: [Vybrat]
# sudo apt-get install exim4 fetchmail mutt procmail cron vim


Miesto vim môžete použiť iný textový editor, trebárs Emacs :D

Exim4

Exim4 by mal byť po inštalácii ihneď nakonfigurovaný ale my aj tak spustíme príkaz:

Kód: [Vybrat]
# sudo dpkg-reconfigure --priority=medium exim4-config

a hneď na začiatku zvolíme položku "mail sent by smarthost; recieved via SMTP or Fetchmail" v prípade lokalizovaného výpisu to bude niečo ako "zasielanie pošty cez chytrý počítač; príjem cez SMTP alebo Fetchmail". Všetky ostatné ponuky by mali zostať ako sú, teda stláčame enter až dokonca.

Kvôli odchádzajúcej pošte zeditujeme súbor /etc/email-addresses
použite na to trebárs príkaz:

Kód: [Vybrat]
# sudo vim /etc/email-addresses

(vim môžete zameniť za gedit)

Do súboru zadáme svoj systémový login a názov ISP pre odchádzajúcu poštu v tvare:

Kód: [Vybrat]
jozef: smtp@kolobezka.sk

Vytvoríme symbolický odkaz /etc/email-addresses -> /etc/exim4/email-addresses

editujeme ďalší súbor:

Kód: [Vybrat]
# sudo vim /etc/exim4/passwd.client

a pridáme riadok v tvare:

Kód: [Vybrat]
### nazov_smtp_servera:login:password
smtp.kolobezka.sk:jozef@kolobezka.sk:moje_heslo

Procmail

Procmail je program pre filtrovanie pošty. Nastavenie procmail-u je pomerne jednoduché, stačí vytvoriť súbor .procmailrc vo svojom domovskom adresári a vložiť doňho nasledujúce riadky:

Kód: [Vybrat]
MAILDIR=$HOME/mail/
LOGFILE=$HOME/.procmaillog
VERBOSE=no
# Mailing lists
# debian-user
:0
* ^TO_debian-user
debian-user/
# All other mail goes to inbox
:0
inbox/

Budeme používať formát maildir a preto vzápätí spustíme nasledovné príkazy:

Kód: [Vybrat]
$ mkdir -p ~/mail/inbox/{cur,new,tmp}
$ mkdir -p ~/mail/sent/{cur,new,tmp}
$ mkdir -p ~/mail/debian-user/{cur,new,tmp}

Môžeme vynechať posledný príkaz, ak debian-user nepoužívame.

Fetchmail

Vzhľadom k tomu, že sa jedná len o nás ako o jedného užívateľa ktorý ho bude aj spúšťať na vyberanie pošty z POP severa, najjednoduchší spôsob bude,  keď vytvoríme súbor .fetchmailrc vo svojom domovskom adresári a vložíme doň nasledujúce riadky, samozrejme patrične upravené:

Kód: [Vybrat]
poll pop.isp.sk with protocol pop3,
  user isp_username there is local_username here,
  with password isp_password;

mda '/usr/bin/procmail -f fetchmail'

Nahradíme pop.isp.sk, isp_username, local_username a isp_password za zodpovedajúce hodnoty.

V prípade, že používate iný protokol budete asi musieť naštudovať dokumentáciu k fetchmailu.

Ak je všetko vporiadku, nasledujúci príkaz by mal stiahnuť poštu zo servera.

Kód: [Vybrat]
$ fetchmail -vk

Ak nechceme zadávať vyššieuvedený príkaz vždy, keď chceme stiahnuť poštu, môžeme si to zautomatizovať. Spustíme preto

Kód: [Vybrat]
crontab -e

spustí sa systémový predvolený editor, pravdepodobne vim alebo nano a zadáme text:

Kód: [Vybrat]
*/10 * * * * fetchmail -s

Toto nám bude spúšťať fetchmail každých 10 minút.

Mutt - poštový klient

Vo finále si môžeme nastaviť mutt, tento krok by mal byť pomerne jednoduchý, pretože väčšinu práce už vykonávajú vyššie uvedené programy.

Vytvoríme si súbor .muttrc vo svojom domovskom adresári a vložíme doň nasledujúce riadky:

Kód: [Vybrat]
set mbox_type=maildir
set mbox="~/mail/inbox/"
set spoolfile="~/mail/inbox/"
set folder="~/mail/"
set record="~/mail/sent/"

# Add an item for each mailbox
mailboxes ~/mail/debian-user

# unessential niceties:

# Show only important stuff in the header
ignore *
unignore from resent-from reply-to x-mailer user-agent date to cc subject

# Order to display the headers in
hdr_order From: Resent-From: Reply-To: X-Mailer: User-Agent: Date: To: Cc: Subject:

# sort messages by thread
set sort=threads

# Automatically quote message in reply
set include=yes

# Set quotemark to 1 byte
set indent_str="> "

# Only show the body when I edit a message
unset edit_headers

# for when you just can't wait for the cron job :)
# set up mutt so i can run fetchmail at any time by pressing G
macro index    G "!fetchmail\n"   "Invoke fetchmail"
macro pager    G "!fetchmail\n"   "Invoke fetchmail"

# tell mutt about my mailing lists
subscribe debian-user

set index_format="%4C %Z %{%b %d} %-15.15F (%?l?%4l&%4c?) %s"

Ak sa vám nepáči farebná schéma vášho mutt-u, môžete si do .muttrc vložiť nasledujúce riadky, ktoré sú zo seriálu o mutt na rootovi:

Kód: [Vybrat]
color normal brightyellow black
color indicator brightyellow red
color status cyan blue

color quoted green black
color quoted1 brightgreen black
color quoted2 white black

color header brightcyan black "User-Agent:"
color index red black "~N"
color body yellow black "[ -]*Original Message[ -]*"

Vim

Do súboru .vimrc v domovskom adresári pridáme nasledujúce riadky:

Kód: [Vybrat]
augroup mail
  autocmd!
  autocmd FileType mail set textwidth=70 wrap nonumber
  autocmd FileType mail :nmap  :w:!aspell -e -c %:e
augroup END

To zapne line wrapping, nastaví šírku riadkov na 70 znakov, vypne číslovanie riadkov a nastaví vim kontrolu pravopisu, ktorá sa vykoná po stlačení klávesy F8. Aspell musíme mať samozrejme nainštalovaný.

Nasledujúce riadky už nie sú podstatné, ale umožnia nám plne využiť mutt

muttprint, abook a urlview

Najprv začneme inštalovať niektoré ďalšie programy:

# sudo apt-get install muttprint urlview abook

Teraz pridáme do nášho ~/.muttrc súboru riadky:

Kód: [Vybrat]
set query_command="abook --mutt-query '%s'"
set print_command="muttprint"
macro index \cb   "|urlview\n"
macro pager \cb   "|urlview\n"
macro index a     "|abook --add-email\n" 'add sender to abook'
macro pager a     "|abook --add-email\n" 'add sender to abook'

Keď máte spustený mutt, po vložení týchto riadkov máte k dispozícii rozšírenia:

klávesa "p" - vytlačenie formátovanej správy
klávesa "Q" - pridá odosielateľa aktuálnej správy do abook-u
kláveda Ctrl+b  - zvýraznenie URL adries
možností je viac, hlavne ohladne spolupráce mutt-u s abookom

Prílohy a HTML

Mutt je textový klient a preto ako taký používa externé programy na otváranie formátov ako pdf, obrázky, súbory MS Office. Riešení ako na to je na webe veľa, my si pridáme nasledujúce riadky do súboru ~/.mailcap:

Kód: [Vybrat]
application/msword; /usr/bin/antiword '%s'; copiousoutput; description="Microsoft Word Text"; nametemplate=%s.doc
application/pdf; /usr/bin/pdftotext '%s' -; copiousoutput; description="PDF File"; nametemplate=%s.pdf
text/html; /usr/bin/lynx -force_html '%s'; needsterminal; description=HTML Text; namet

Toto bude otvárať MS Word súbory programom Antiword, pdf súbory programom pdftotext a na zobrazenie HTML správy sa použije Lynx. Výber je orientovaný na konzolové programy, vy si tam môžete nadefinovať svoje vlastné.

Ak chceme tieto programy používať a ešte ich v systéme nemáme, nainštalujeme ich:

Kód: [Vybrat]
# sudo apt-get install antiword lynx xpdf

Odkazy

Seriál o Mutt na Linuxsoft.cz: http://www.linuxsoft.cz/article_list.php?id_kategory=221
Seriál Mutt - začínáme bezbolestně na Rootovi: http://www.root.cz/serialy/mutt-zaciname-bezbolestne/
Mutt - jak začít na Abicku: http://www.abclinuxu.cz/clanky/navody/mutt-jak-zacit
My first mutt (v anglictine): http://mutt.blackfish.org.uk/
« Poslední změna: 09 Listopadu 2008, 11:08:19 od Juraj »

kalesek

  • Návštěvník
  • Příspěvků: 28
ahoj, moje bádání bylo náhle ukončeno u programu Fetchmail
Kód: [Vybrat]
kali@snek:~$ fetchmail -vk
Soubor /home/kali/.fetchmailrc nesmí mít oprávnění více než -rwx--x--- (0710).
Nevíte někdo co to chce?

petergula

  • Stálý člen
  • **
  • Příspěvků: 1016
TO kalesek: no a skusil si mu nastavit tie prava na ten subor tak ako Ti pise?
Citace
Soubor /home/kali/.fetchmailrc nesmí mít oprávnění více než -rwx--x--- (0710).
ntbk Dell 6420 (Amd Ati, Intel i7, 4GB RAM, 256GB SSD ...)
secondary/u svokrovcov:
Xubuntu (64bit) ntbk Asus A6Je (Ati X1450, Intel Core2Duo T5500, 2.5GB RAM ...)

kalesek

  • Návštěvník
  • Příspěvků: 28
asi ne, hledal jsem v opravnění ve vlatnostech souboru .fetchmailrc

kalesek

  • Návštěvník
  • Příspěvků: 28
jojo bylo to těmi právy  ::) díky za vodítko... Na wiky je to pekne popsané. Omlouvam se za zbytečný dotaz.   
pro ostani lamy: ostatní a skupina jsem dal - žádný přístup

 

Provoz zaštiťuje spolek OpenAlt.