Postfix, Dovecot ja Active Directory kasutamine
Sissejuhatus
TODO
Tööpõhimõte
Postkasti arvuti failisüsteemi kasutamine kujuneb selliseks
# find /srv/vmail/imool.org/priit/ -mmin -5 -ls 1442433 4 drwx------ 4 vmail vmail 4096 Mar 15 11:46 /srv/vmail/imool.org/priit/ 1442466 4 -rw------- 1 vmail vmail 279 Mar 15 11:46 /srv/vmail/imool.org/priit/.dovecot.svbin 1442449 4 drwx------ 5 vmail vmail 4096 Mar 15 11:46 /srv/vmail/imool.org/priit/mail/.leedu 1442458 4 -rw------- 1 vmail vmail 472 Mar 15 11:46 /srv/vmail/imool.org/priit/mail/.leedu/dovecot.index.cache 1442463 4 -rw------- 1 vmail vmail 457 Mar 15 11:46 /srv/vmail/imool.org/priit/mail/.leedu/dovecot-uidlist 1442459 4 -rw------- 1 vmail vmail 1792 Mar 15 11:46 /srv/vmail/imool.org/priit/mail/.leedu/dovecot.index.log 1442452 4 drwx------ 2 vmail vmail 4096 Mar 15 11:46 /srv/vmail/imool.org/priit/mail/.leedu/tmp 1442451 4 drwx------ 2 vmail vmail 4096 Mar 15 11:46 /srv/vmail/imool.org/priit/mail/.leedu/new 1442470 4 -rw------- 1 vmail vmail 1343 Mar 15 11:46 /srv/vmail/imool.org/priit/mail/.leedu/new/1426412777.M992489P23061.postkast,S=1343,W=1376 1442462 4 -rw------- 1 vmail vmail 89 Mar 15 11:46 /srv/vmail/imool.org/priit/mail/maildirsize 1442438 4 -rw------- 1 vmail vmail 956 Mar 15 11:48 /srv/vmail/imool.org/priit/mail/dovecot.index.log 1442447 4 drwx------ 3 vmail vmail 4096 Mar 15 11:48 /srv/vmail/imool.org/priit/sieve 1442475 4 -rw------- 1 vmail vmail 440 Mar 15 11:48 /srv/vmail/imool.org/priit/sieve/managesieve.sieve 1442455 4 drwx------ 2 vmail vmail 4096 Mar 15 11:48 /srv/vmail/imool.org/priit/sieve/tmp
kus
- /srv/vmail/imool.org/priit - virtuaalse kasutaja nn home kataloog
- ~/mail - Maildir kataloog
- ~/sieve - Sieve kataloog
- ~/mail/.leedu - postkastis asuva kausta nimi
- ~/mail/.leedu/new/1426412777.M992489P23061.postkast,S=1343,W=1376 - konkreetne kiri
- ~/sieve/managesieve.sieve - Sieve script
- kõik failid failisüsteemis on kasutaja:grupp vmail:vmail omad
Antud juhtumil Dovecot enda seisukohast ei ole kirjade vastuvõtmiseks AD LDAP kataloogist vaja midagi küsida (kuigi Dovecot arvutis töötav Postfix seda teeb, et kontrollida, ega ei saadata kirja olematule kastuajale).
Active Directory ettevalmistamine
TODO
Postfix ettevalmistamine
Eeldades, et Postfix on üldiselt seadistatud, jäänud on vaid Postfix liidestamine Dovecotiga. Selleks on kaks võimalust
- LMTP
- LDA
# apt-get install postfix-ldap
LMTP
LMTP kasutamiseks tuleb paigadada pakett
# apt-get install dovecot-lmtpd
ning Postfix seadistusfailis öelda
# cat /etc/postfix/main.cf .. virtual_mailbox_domains = imool.org virtual_mailbox_maps = ldap:/etc/postfix/virtual-mailbox-maps-ldap.cf virtual_alias_maps = ldap:/etc/postfix/virtual-alias-maps.cf virtual_transport = lmtp:unix:/var/run/dovecot/lmtp
kus
- TODO
ning /etc/postfix/master.cf failis
# ========================================================================== # service type private unpriv chroot wakeup maxproc command + args # (yes) (yes) (yes) (never) (100) # ========================================================================== .. lmtp unix - - n - - lmtp ...
LDA
LDA tugi sisaldub Dovecot põhiosas, kasutamiseks tuleb
# cat /etc/postfix/main.cf .. virtual_transport = dovecot
ning
# cat /etc/postfix/master.cf .. dovecot unix - n n - - pipe flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${recipient}
Dovecot tarkvara paigaldamine
Dovecot tarkvara on nö olemuslikult modulaarne ja operatsioonisüsteem Debian paketihalduses samuti, nt esinevad paketid
- dovecot-core - Dovecot põhiosa
- dovecot-imapd - IMAP deemon
- dovecot-pop3d - POP3 deemon
- dovecot-mysql - kasutajate info kasutamine MySQL andmebaasist
- dovecot-pgsql - kasutajate info kasutamine PostgreSQL andmebaasist
- dovecot-ldap - kasutajate info kasutamine LDAP kataloogist
- dovecot-gssapi - Kerberos autentimine
- dovecot-lmtpd - LMTP server
- dovecot-managesieved - ManageSieve server
- dovecot-sieve - Sieve filtri tugi
Debian v. 7 Wheezy
Lisada süsteemi wheezy-backports tugi
# cat /etc/apt/sources.list deb http://ftp.ee.debian.org/debian/ wheezy-backports main contrib non-free deb-src http://ftp.ee.debian.org/debian/ wheezy-backports main contrib non-free
ning öelda (küsitakse sertifikaadi tekitamise kohta, vastata jaatavalt)
# apt-get -t wheezy-backports install dovecot-imapd dovecot-ldap
Debian v. 8 Jessie
Nt sobib suhteliselt minimalistliku IMAP toega Dovecot paigaldamiseks õelda
# apt-get install dovecot-imapd dovecot-ldap
Paigaldamise tulemusena tekib failisüsteemi
- /etc/default/dovecot - seadistusfail
- /etc/dovecot/dovecot.conf - seadistusfail
- /etc/dovecot/conf.d - seadistusfailide kataloog
- /etc/init.d/dovecot - käivitusskript
- dovecot:dovecot ja dovenull:dovenull kasutaja:grupp
- /etc/dovecot/private/dovecot.pem - salajane võti
- /etc/dovecot/dovecot.pem - sertifikaat
Lisada kasutaja:grupp vmail:vmail
# groupadd -g 5000 vmail # useradd -g vmail -u 5000 -m -d /opt/vmail vmail
Tekitada postkastide kataloog
# mkdir /srv/vmail # chown vmail:vmail /srv/vmail
Dovecot seadistamine
LDAP kasutamine
- /etc/dovecot/conf.d/10-auth.conf - kirjeldab, millise andmestiku vastu IMAP kasutaja autentimine toimub, antud juhul LDAP (viitab failile auth-ldap.conf.ext)
- /etc/dovecot/conf.d/auth-ldap.conf.ext - kirjeldab passdb ja userdb, antud juhul vastavalt LDAP ja static (viitab failile /etc/dovecot/dovecot-ldap.conf.ext)
- /etc/dovecot/dovecot-ldap.conf.ext - kirjeldab LDAP kataloogi asukoha ning kuidas LDAP päringuid teha ja vastuseid tõlgendada
/etc/dovecot/conf.d/10-auth.conf
Seadistusfail /etc/dovecot/conf.d/10-auth.conf sisaldab ridu
disable_plaintext_auth = no auth_mechanisms = plain login !include auth-ldap.conf.ext
kus
- plain - oskavad kasutada nt Thunderbird, Roundcube; ei oska Outlook
- login - oskab kasutada Outlook
/etc/dovecot/conf.d/auth-ldap.conf.ext
Seadistusfail /etc/dovecot/conf.d/auth-ldap.conf.ext sisaldab
passdb { driver = ldap args = /etc/dovecot/dovecot-ldap.conf.ext } userdb { driver = static args = uid=vmail gid=vmail home=/srv/vmail/%d/%n allow_all_users=yes }
kus
- passdb - IMAP autentimise jaoks oluline
- userdb - saabunud kirjade failissteemi laialijagamiseks oluline
- %d - muutuja saab väärtuseks saabunud kirja domeeni osa (oluline, et see oleks kooskõlas allpool esitatud mail_localtion ja sieve osaga)
- %n - muutuja saab väärtuseks saabunud kirja kasutajanime osa (selle teeb postfixi osa ühetaoliselt, st aliastele saadetud kirjad saadetakse Dovecotile kõik ühele nö kanoonilisele aadressile)
/etc/dovecot/dovecot-ldap.conf.ext
Seadistusfaili /etc/dovecot/dovecot-ldap.conf.ext saab esitada mitmel enam-vähem samaväärsel viisil, kuid igal juhul peab arvestama asjaoluga, et Active Directory ei väljasta kasutaja parooli ei avatekstilisel ega ka hashitud kujul. St AD'le saab öelda mis on kasutajanimi ja parool ja ta vastab, kas komplekt sobib või mitte. Selle kohta öeldakse auth_bind'i tegema.
Lihtsam ja jäik juhtum nn DN (distinguished name) template abil
# cat /etc/dovecot/dovecot-ldap.conf.ext hosts = 10.0.9.4 ldap_version = 3 auth_bind = yes base = dc=imool,dc=local auth_bind_userdn = IMOOL\%n
kus
- kasutaja parooli kontrollimiseks auth_bind_userdn template ja ldap search base abil tabatakse õige ldap kirje ja toimub parooli kontroll
- tehakse üks LDAP päring
LDAP teenuskonto abil leitud DN abil tehtud auth_bind
# cat /etc/dovecot/dovecot-ldap.conf.ext hosts = 10.0.9.4 ldap_version = 3 auth_bind = yes dn = postfix@imool.local dnpass = parool base = dc=imool,dc=local pass_filter = (&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl=514)))
kus
- dn ja dnpass - ldap teenuskonto ligipääs
- base - ldap search base
- pass_filter - saab paindlikult kirjeldada, milliste ldap objektide seas saab kasutaja esineda
- pass_attrs - saaks kasutada, aga ei ole vajadust
- esmalt tehakse teenuskonto abil kataloogi päring ja leitakse kasutaja DN üles; seejärel toimub leitud DN peale bind_auth kasutaja esitatud parooli abil
Kirjeldatud LDAP korrektse seadistamise tulemusena peab IMAP login töötama
$ telnet localhost 143 Trying ::1... Connected to localhost.localdomain. Escape character is '^]'. * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE STARTTLS AUTH=PLAIN] Dovecot ready. . login "imre.oolberg@imool.ee" "parool" . OK [CAPABILITY IMAP4rev1 LITERAL+ ....] Logged in . list "" "*" . logout
Lisaks töötavad ka muud sõlmed, mis on seadistatud kasutama IMAP autentimist, nt frontend Postfix SMTP AUTH.
/etc/dovecot/conf.d/10-mail.conf
Seadistusfail /etc/dovecot/conf.d/10-mail.conf näidab IMAP deemonile, kus asub failisüsteemis kasutaja postkasti ja sisaldab nt
mail_location = maildir:/srv/vmail/%d/%n/mail namespace inbox { inbox = yes }
kus
- TODO
SSL
SSL/TLS tööd kontrollib seadistusfail
/etc/dovecot/conf.d/10-ssl.conf
minimaalselt
ssl = yes ssl_cert = </etc/dovecot/dovecot.pem ssl_key = </etc/dovecot/private/dovecot.pem # ssl_ca = </etc/dovecot/ca.pem
kus
- < märk tähistab, et parameerti väärtuseks on näidatud faili sisu
- ssl_cert sisaldab teenuse sertifikaati + kogu ahelat (faili alguses on täpsemad serdid ja faili lõpus self signed juurikas kuigi põhimõtteliselt piisab nö eelviimasest vahesertifikaadist)
Kliendi seadistamine
- Server type - IMAP
- serveri nimi (või ip aadress)
- port - 993
- Connection security - SSL/TLS (mitte STARTTLS)
- Authentication method - Normal password
- kasutajanimi
- parool
Testimine
# sslscan 10.103.6.143:993 | grep Acce Accepted TLSv1 256 bits ECDHE-RSA-AES256-SHA Accepted TLSv1 256 bits DHE-RSA-AES256-SHA Accepted TLSv1 256 bits DHE-RSA-CAMELLIA256-SHA Accepted TLSv1 256 bits AES256-SHA Accepted TLSv1 256 bits CAMELLIA256-SHA ...
Quota
Quota toimib kahe nö sisendi juures
- Postfix kopeerib andmeid Dovecot peale üle LMTP
- Thunderbird, Outlook vms eposti klientprogramm töötab Dovecot kui IMAP serveriga
Ühetaolise quota kasutamine
Üldiste st kõigile kasutajatele ühtemoodi kehtivata quota piirangute seadistamiseks tuleb teha nt sellised muudatused
# cat /etc/dovecot/conf.d/10-mail.conf .. mail_plugins = $mail_plugins quota ...
# cat /etc/dovecot/conf.d/20-lmtp.conf .. protocol lmtp { mail_plugins = $mail_plugins sieve quota }
(quota_rule2 väärtus sõltub prefix ja separator valikust)
# cat /etc/dovecot/conf.d/90-quota.conf .. plugin { quota_rule = *:storage=1G quota_rule2 = INBOX/Trash:storage=+100M } plugin { quota = maildir:User quota } ...
kus
- TODO
Parasjagu oleva quota kohta saab küsida nt nii
# doveadm quota get -u priit.kask@imool.org Quota name Type Value Limit % User quota STORAGE 10 3000000 0 User quota MESSAGE 9 -
Postfix teavitamine quotast
Oluline on, et frontend Postfix ei võtaks kirja vastu ja saades pärast Dovecot käest teada, et seda pole kuhugi edasi anda, saadab selle varsti internetti tagasi. Selles osas aitab kirjeldada Dovecot peal quota-status teenus
# cat /etc/dovecot/conf.d/10-master.conf .. service quota-status { executable = quota-status -p postfix inet_listener { port = 12340 } client_limit = 1 } ...
ning
# cat /etc/dovecot/conf.d/91-quota-status.conf plugin { quota_status_success = DUNNO quota_status_nouser = DUNNO quota_status_overquota = "552 5.2.2 Mailbox is full" }
Postfix juures tuleb kasutada midagi sellist (see peaks olema esimene rida)
smtpd_recipient_restrictions = check_policy_service inet:postkast.imool:12340 ...
Quota erandite kasutamine
Kasutajale üldisest erineva quota seadistamiseks tuleb teha süsteemi seadistusfailides mitu muudatust, mis on seotud sellega, et kasutaja quota väärtus tuleb leida LDAP kataloogist, nt tavaliselt kasutuseta Title väljast.
- seadistusfaili /etc/dovecot/dovecot-ldap.conf.ext muudatus
hosts = 10.0.9.4 ldap_version = 3 auth_bind = yes dn = postfix@imool.org dnpass = "parool" base = dc=imool,dc=local user_attrs = title=quota_rule=*:storage=%$ user_filter = (&(mail=%u)(objectClass=person)(!(userAccountControl=514))) pass_filter = (&(mail=%u)(objectClass=person)(!(userAccountControl=514))) scope = subtree
lisandunud user_attrs rida tuleks lugedas selliselt, et Dovecot Quota tööd juhtiv parameeter quota_rule saab väärtuseks 2 G eelduselt, et AD peal on Title atribuut väärtuseks näidatud 2000000000
*:storage=2000000000
- seadistusfaili /etc/dovecot/conf.d/auth-ldap.conf.ext muudatus, kastutada eespool tekstis näidatud userdb asemel sellist
userdb { driver = ldap args = /etc/dovecot/dovecot-ldap.conf-userdb.ext default_fields = uid=vmail gid=vmail home=/srv/vmail/%d/%n }
kus /etc/dovecot/dovecot-ldap.conf-userdb.ext on link failile /etc/dovecot/dovecot-ldap.conf.ext (nii pidi töötama süsteemi efektiivsemalt)
# ls -ld /etc/dovecot/dovecot-ldap.conf-userdb.ext lrwxrwxrwx 1 root root 34 Feb 16 00:21 /etc/dovecot/dovecot-ldap.conf-userdb.ext -> /etc/dovecot/dovecot-ldap.conf.ext
- selleks, et scope = subtree toimiks sobib kasutada /etc/ldap/ldap.conf failis rida
# cat /etc/ldap/ldap.conf REFERRALS off
Vastasel korral küll iseenesest süsteem töötab, aga Dovecot kasutamisel toimuvad episoodilised ca 10 sekundi pikkused timeoutid. Idee referrals juures probleemi otsimiseks tekib vaadates Dovecot ja AD vahelist LDAP liiklust Wiresharkiga, seal esineb taolisi sõnumeid
LDAPMessage searchResRef messageID: 10 protocol0p: searchResRef searchResRef: 1 item LDAPURL: ldap://imool.org/CN=Configuration,DC=imool,DC=org ...
ning lisaks on timeout ajal näha, et püütakse pöörduda imool.org nimele vastava avaliku ip aadressi poole (AD ise on sisemisel aadressil).
Kasulikud lisamaterjalid
- http://www.dovecot.org/pipermail/dovecot/2013-October/093214.html
- http://www.dovecot.org/list/dovecot/2010-February/046763.html
- http://comments.gmane.org/gmane.mail.imap.dovecot/69870
Sieve
Sieve (ingl. k. sõel) abil saab kasutaja oma IMAP klientprogrammis, reeglina mugava haldusliidese abil, mitte skripte redigeerides vms
- seadistada serverit nii, et serveris jagatakse sissetulevad kirjad mingite kirjeldatud tunnuste abil postkastidesse (nt Subject sisaldab mingit sõne)
- seadistada serveris vacation (out of office, autoresponse) teate saatmine
Samas on võimalik ka postkasti arvutis, kus Dovecot töötab tekitada käsitsi erinevaid sieve skripte.
Sieve filtri juurutamine
Sieve filtrite kasutamise tugi
# apt-get install dovecot-sieve
Tööd juhib seadistusfail
conf.d/90-sieve.conf
Plugini aktiviseerimiseks tuleb kirjade sisenemisega tegeleva mooduli, nt LMTP seadistusfailis muude pluginate hulgas näidatud sieve, nt
# cat conf.d/20-lmtp.conf protocol lda { mail_plugins = $mail_plugins sieve quota }
Managesieve server
Selleks, et Sieve kliendid saaksid Dovecot serverit juhtida tuleb postimasinasse juurutada Managesieve protokolliga töötav teenus
# apt-get install dovecot-managesieved
Tööd juhib seadistusfail
conf.d/20-managesieve.conf
Tulemusena töötab teenus vaikimisi pordil
# netstat -lnp | grep dove tcp 0 0 0.0.0.0:4190 0.0.0.0:* LISTEN 16667/dovecot ...
Sieve filtri kasutamine
Sieve filtri kasutamiseks on vaja sobivat IMAP klient tarkvara, nt Roundcube veebimeili. Kasutamine paistab välja selline
Kasulikud lisamaterjalid
Taustal tekitatakse serveriss selline fail
# cat /srv/vmail/imool.org/priit/sieve/managesieve.sieve require ["date","fileinto","relational"]; # rule:[leedu] if header :contains "subject" "leedu" { fileinto "leedu"; } # rule:[eesti] if header :contains "subject" "eesti" { fileinto "eesti"; }
Vacation vastuste kasutamine
Roundcube abil paistab Vacation teate ettevalmistamine selliselt
Tehniliselt toimub Vacation vastustega tegelemine Sieve abil, vastav sektsioon on sarnane
# /srv/vmail/imool.org/priit/sieve/managesieve.sieve require ["date","fileinto","relational","vacation"]; # rule:[Vacation] if allof (currentdate :zone "+0200" :value "ge" "iso8601" "2015-03-16T00:00:00+02:00", \ currentdate :zone "+0300" :value "le" "iso8601" "2015-03-30T00:00:00+03:00" { vacation :subject "Olen tööpostilt eemal" text: Tere! Ma olen tööpostilt eemal ajavahemikul 16. märts - 29. märts 2015. Saadetud salvestatakse postkasti, aga tegelen nendega alatest 30. märtsist. Kiireloomuliste küsi Piit . ;
From: aadressile saadetakse vacation vastus üks kord, arvestust saatmiste kohta peetakse faili abil
/srv/vmail/imool.org/priit/.dovecot.lda-dupes
Tundub, et Dovecot, õieti Sieve saadab vastuse samas arvutis töötavad Postfix abil
# grep 97AB760884 /var/log/mail.log Mar 15 17:35:02 postkast postfix/pickup[24414]: 97AB760884: uid=5000 from=<> Mar 15 17:35:02 postkast postfix/cleanup[25017]: 97AB760884: message-id=<dovecot-sieve-1426433702-589317- 1@postkast.toodang.imool.org> Mar 15 17:35:02 postkast postfix/qmgr[9352]: 97AB760884: from=<>, size=857, nrcpt=1 (queue active) Mar 15 17:35:04 postkast postfix/smtp[25022]: 97AB760884: to=<mart@imool.ee>, \ relay=mail.imool.org[194.204.62.116]:25, delay=1.4, delays=0.09/0/0.05/1.3, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 2615D603D4) Mar 15 17:35:04 postkast postfix/qmgr[9352]: 97AB760884: removed
Käsitsi sieve skriptide kasutamine
Tundub, et Dovecot kompileerib sieve skriptid automaatselt ära. Nt kasutaja skript kasutab :global skripti
# cat conf.d/90-sieve.conf .. sieve_global_dir = /etc/dovecot/sieve ...
ning
# cat /etc/dovecot/sieve/global.sieve require ["fileinto"]; # rule:[gloobus] if header :contains "subject" "gloobus" { fileinto "gloobus"; }
ning kasutaja sieve skript
# /srv/vmail/imool.org/priit/sieve/kasutajaskript.sieve require ["date","fileinto","relational","vacation","include"]; include :global "global";
Namespace
IMAP postimasinate sh Dovecot puhul tuleb eristada kahte tüüpi separator'eid
- kliendi separator - eraldaja, mis eristab imap kliendi jaoks folderit alamfolderist, tavaliselt on see punkt (.), lisaks on levinud / märk see on paista namespace käsu väljundis (sulgudes teine positsioon) ning list käsu väljundis
. namespace * NAMESPACE (("" ".")) NIL NIL . OK Completed
- failisüteemi separator - eraldaja, mis eristab imap serveri failisüsteemis folderit alamfolderist, tavaliselt on see punkt (.), lisaks on levinud / märk
vastavalt
/srv/vmail/imool.org/priit.kask/mail/.YLEM.ALAM
või
/srv/vmail/imool.org/priit.kask/mail/YLEM/ALAm
Vaikimisi kasutab Dovecto failisüsteemis eraldajana . ja / sisselülitamiseks sobib kasutada seadistusfailis 10-main.conf rida
mail_location = maildir:/srv/vmail/%d/%n/mail:LAYOUT=fs
Namespace võimaldab serveris olevaid nö kirjade hoidmisi grupeerida, kõige tavalisemal juhul on kasutusel üks personal tüüpi namespace. Iseenesest on olemas kolme erinevat tüüpi namespace'id
- personal
- public
- shared
Parasjagu serveris kirjeldatud namespace olukorda näeb küsides
. namespace
mille vastuses esitatakse kolm positsiooni andmeid (personal, public, shared; kui ühel on mitu namespace väärtust, esitatakse nö array). Kui vastav positsioon on tühi, siis esitatakse seal NIL.
Dovecot vaikimisi namespace
. namespace * NAMESPACE (("" ".")) NIL NIL . OK Completed
Cyrus vaikimisi namespace
. namespace * NAMESPACE (("INBOX." ".")) (("user." ".")) (("" ".")) . OK Completed
Courier vaikimisi namespace
. namespace * NAMESPACE (("INBOX." ".")) NIL (("#shared." ".")("shared." ".")) . OK NAMESPACE completed.
mail.ee namespace (aastal 2015)
. namespace * NAMESPACE (("INBOX/" "/")) (("user/" "/")) (("" "/")) . OK Completed
zone.ee namespace (aastal 2015)
TODO
Microsoft Exchange (vaikimisi?) namespace
TODO
Tundub, et soovitatakse kasutada sellist komplekti
.. mail_location = maildir:/srv/vmail/%d/%n/mail ... separator = / .... prefix = INBOX/
tulemusena
- failisüsteemis on kataloogide eraldajaks .
- imap kliendi jaoks on kataloogide eraldajaks /
- kõik kataloogid asuvad nii kliendi kui failisüsteemi vaatest INBOX all
Kasulikud lisamaterjalid
Master kasutaja
Master kasutaja abil saab logida süsteemi mõne nö tavakasutaja rollis. Sellise asjakorralduse tekitamiseks tuleb lisada /etc/dovecot/conf.d/auth-ldap.conf.ext faili sektsioon (tõenäoliselt on kokku kaks passdb {...} sektsiooni nüüd Dovecotis)
auth_master_user_separator = * passdb { driver = passwd-file args = /etc/dovecot/passwd.masterusers master = yes pass = no }
ning tekitada fail /etc/dovecot/passwd.masterusers
# htpasswd -b -c -s /etc/dovecot/passwd.masterusers imre imreparool Adding password for user imre
Testimiseks on sobiv programm imtest mis on cyrus-clients paketi koosseisus
# apt-get install --no-install-recommends cyrus-clients
Kasutamiseks on kaks võimalust
- kasutamisel näidata erali auth kasutajanimena master useri nimi (imre)
$ imtest -a imre -u priit.kask@imool.org 192.168.7.143 -w imreparool
- kasutamisel lisada tavakasutaja nime järele '*imre' (seda varianti üldiselt ei soovitata kasutada)
$ imtest -u priit.kask@imool.org*imre 192.168.7.143 -w imreparool
SSL või TLS ühenduse testimiseks tuleks kasutada lisaks vastavalt suvandit -s või -t ""
ACL
Ainult lugemiseks folderis seadistamine, lülitada sisse acl lisa
# cat /etc/dovecot/conf.d/10-mail.conf ... mail_plugins = acl
Kirjeldada global-acls faili kasutamine
# cat /etc/dovecot/conf.d/90-acl.conf ... plugin { acl = vfile:/etc/dovecot/global-acls:cache_secs=300 }
Tekitada ACL seadistufail
# cat /etc/dovecot/global-acls AINULTLUGEMISEKS user=priit.kask@imool.org lr
Tulemusena saab kasutaja peale sisselogimist küll lugeda AINULTLUGEMISEKS folderist kirju, aga mitte sealt neid kustutada.
Virtual
Virtual namespace abil saab tekitada nö just-nagu-päris väljanägemisega personal namespace'i kasutajale juurde. Ja seal all paistavad kirjad, mis vastavad mingitele tunnustele, nt on uuemad näidatud ajast vms. Virtual namespace kasutamiseks tuleb lülitada moodul sisse, nt
# cat /etc/dovecot/conf.d/10-mail.conf ... mail_plugins = virtual
Seejärel samas failis kirjeldada virtual namespace, nt
namespace { prefix = virtual/ separator = / location = virtual:/srv/vmail/virtual }
Ning konkreetne virtual namespace sisu, nt
# cat /srv/vmail/virtual/viimased/dovecot-virtual INBOX all younger 3000
# cat /srv/vmail/virtual/hiljutised/dovecot-virtual INBOX unseen
Kataloog /srv/vmail/virtual peab olema nö õige aus Maildir kataloog, nt kopida kuskilt. dovecot-virtual failides tehtud muudatused kehtestuvad suhteliselt kiiresti, midagi restartida ei ole vaja.
Lisad
- virtual
- logging
Misc
# doveadm mailbox list -u priit.kask@imool.org INBOX INBOX/test2 INBOX/test INBOX/test/test5
Shared folders abil saab sama postimasina piires üks kasutaja teha mingi osa oma kirjadest teisele kasutajale ligipääsetavaks. Shared folder sisslülitamiseks tuleb
- lülitada sisse Dovecot ACL
- tekitada ACL'id
- kasutada shared folder võimalist eposti klienti
ACL tekitamiseks sobib öelda nt (alternatiiv on kasutada acl seadistamise võimega eposti klenti)
$ telnet 192.168.1.252 143 .. . login "priit.kask@auul.pri.ee" "priiduparool" ... 1 setacl INBOX/priidufoldermillelesaabmartligi mart.kask@imool.org rl 1 OK Setacl complete. 2 setacl INBOX/priidufoldermillelesaabmartligi mart.kask@imool.org +s 2 OK Setacl complete. 2 getacl INBOX/priidufoldermillelesaabmartligi * ACL INBOX/priidufoldermillelesaabmartligi mark.kask@imool.org lrs priit.kask@auul.pri.ee lrwstipekxacd
kus
- TODO
Kasulikud lisamaterjalid
- TODO