Dovecot

Allikas: Kuutõrvaja
Redaktsioon seisuga 25. oktoober 2010, kell 15:14 kasutajalt Jj (arutelu | kaastöö)

Sissejuhatus

Dovecot.png

On lihtne kuid võimekas ja kiirelt arenev imap ja pop3 server mis toetab nii mbox kui maildir formaati, SSL krüpteerimist ja autentimist ning kirjade indekseerimist. Ka oskab Dovecot kasutada autentimisel erinevaid andmebaase näiteks MySQLi, PostgreSQLi, LDAPi või kasutada neid suisa paraleelselt, samuti on Dovecot clusterdamise toega.

Ametlikuks koduleheks on tarkvaral http://www.dovecot.org/

Dovecot on laiemalt tuntud tarkvara mida võib leida enamuse levinud operatsioonisüsteemide näiteks Linux, Solaris, FreeBSD, OpenBSD, NetBSD ja Mac OS X pakihaldusest ning seetõttu pole paigaldusprotsessil arvatavasti tarvidust pikemalt peatuda.

NB Käesolevas teksti on kirjutatud 1.2.6 versioonile tuginedes.

Kasutusnäide

Järgnevalt serveri seadistusfail, kus kasutusel nii imap kui imaps ehk siis plaintext ja ssl krüpteeritud imapi ühendused ja autenditakse vastu pam'i ehk kasutajate info asetseb passwd faili

fail dovecot.conf

# kasutatavad protokollid
protocols = imap imaps

# kuulatakse porte 143 ja 933 kõigil võrguseadmetel
protocol imap {
 listen = *:143
 ssl_listen = *:993
}

disable_plaintext_auth = no
# ssl sertifikaadid
ssl_cert_file =/usr/local/certs/server.crt
ssl_key_file = /usr/local/certs/server.key
#kasutusel on mbox formaat, asuvad need kasutaja kodukataloogis kaustas mail ja /var/mail all
mail_location = mbox:~/mail/:INBOX=/var/mail/%u
mail_privileged_group = mail
verbose_proctitle = yes

first_valid_gid = 0
mail_cache_fields = flags, date.sent, date.received, size.virtual, size.physical, mime.parts,  imap.body, imap.bodystructure
 
protocol imap {
 imap_client_workarounds = delay-newmail outlook-idle netscape-eoh tb-extra-mailbox-sep
}
# autentimise mehanismused ehk pam ja passwd fail
auth default {
 mechanisms = plain login
  passdb pam {
 }
  userdb passwd {
}

#socket autentimiseks 
socket listen {
 client {
   path = /var/spool/postfix/private/auth
   mode = 0660
   user = postfix
   group = postfix
  }
 }

} 

Dovecot SASL toetus on olemas alates Postfixi 2.3 versioonist. Postfixi poolelt on vaja esiteks defineerida autentimise socketi asukoht. Tark on viidata rajaga postfixi saba (queue) kausta sest siis saab seda kasutada ka chroot keskonnas asuva postfix korral.

avame selleks faili /etc/postfix/main.cf

smtpd_sasl_type = dovecot
smtpd_sasl_path = /var/spool/postfix/private/auth

Dovecoti poolelt on vaja siis samuti defineerida vastav rada socketini mida autentimise informatsiooni vahetamiseks kasutatakse. Antud ülal asuvas näites määratakse see kõige viimases plokis.

Autentimisest leiab pikkemalt juttu postfixi enda lehel

Lisaks on vajalik genereerida ja paigaldada sertifikaadid

/usr/local/certs/server.crt
/usr/local/certs/server.key

Palju seadistusnäiteid leiab http://wiki.dovecot.org/HowTo

Muud kasutusjuhud

Mbox, mis on vananenud ja tülikas formaat asemel kasutades maildiri võib kirjutada konfis mail_location rea järgnevalt

mail_location = maildir:~/Maildir

Samuti suudab dovecot olla rohkem kui vaid imapi klient ja näiteks LDA abil võtta maili vastu MTA'lt (postfix nt) ja ise kirjutada selle kasutaja kaustadesse ja failidesse.

Paljusid võtmeid ning kasutusvõimalusi seletakse lahti ametlikus wikis http://wiki.dovecot.org/

Probleemid

Mõne Dovecoti versiooni uuenduse järel on juhtunud olukordi kus failide formaat muunud ning ta annab mailogisse veateateid

imap-login: Login: user=<mart>, method=PLAIN, rip=192.168.10, lip=192.168.1.7
IMAP(mart): FETCH for mailbox INBOX UID 5249 got too little data: 1607 vs 1646
IMAP(mart): Disconnected: Disconnected bytes=84/43456 

Seljuhul teeb asja korda kasutaja kodust dovecot.index.* failide kustutamine.

# find /home -type f -name "dovecot.index" -ls -exec rm  {} \; 

Lingid ja lisamaterjal

http://en.gentoo-wiki.com/wiki/Dovecot/Install