Dovecot 2 - descrierea setărilor, în contextul configurației în cauză

Nota descrie selectiv anumite părți din documentația oficială Dovecot (traducere liberă). Au fost dezasamblate mecanisme separate de lucru, au fost luați în considerare anumiți parametri ai configurației fișierelor de configurare etc.






Doar cele mai importante momente sunt atinse, minimul necesar pentru "intrarea în subiect".

Aceasta este mai mult o foaie rezumat-ieftin decât o carte de referință fiabilă. În plus față de răspunsurile de aici pot fi întrebări.

Aici sunt inserate în piesă o traducere gratuită a documentației oficiale, fără avertismente diluate de către cei care nu văd nimic!

Dovecot - momente comune

Dovecot efectuează două funcții principale - oferă o interfață pentru accesarea MUA prin POP sau IMAP și efectuează livrarea finală a corespondenței, de la MTA la casete (în foldere). Această funcție de livrare poate fi efectuată de Postfix în sine cu ajutorul LDA sau poate fi o LDA de la terți.

Dar, în această configurație, Dovecot continuă să facă acest lucru. Și în procesul de livrare, este implicat mecanismul lmtp.

IMPORTANT! Pentru a susține protocolul lmtp, trebuie instalat pachetul dovecot-lmtp.

Versiunea.
Dovecot este în permanență actualizat, iar pachetele din depozitele Debian ale versiunii stabile sunt bineînțeles rămase în urmă. În noile versiuni există schimbări semnificative care pot fi foarte interesante. Dintre aceștia din urmă, pe care eu unul placut - finalizarea doveadm echipă nouă „Deduplicați“ instrument de linie de comandă, care permite consola pentru a scana aceste foldere virtuale ale utilizatorilor și de a elimina mesajele duplicat (prinderea lor pe ID-ul mesajului). Din păcate, nu există o astfel de funcționalitate în versiunea stabilă.

Dacă doriți să riscați să puneți cea mai recentă versiune, mai întâi trebuie să adăugați o linie indicând cea mai recentă versiune (la momentul redactării, aceasta este versiunea 2.2)

Apoi, actualizați depozitele și instalați cele mai recente pachete.

Documentația nativă, după instalare, poate fi găsită aici: / usr / share / doc / dovecot-core / dovecot / wiki /.

Metode de autentificare.
  • simplu
  • Digest-MD5
  • Cram-MD5
  • apop (numai pentru POP3)
  • anonim
Utilizator / Parolă de bază.
  • PAM
  • "passwd" și "shadow"
  • Executarea parolei
  • MySQL, cu capacitatea de a folosi în cazuri diferite, gazde diferite și baze diferite
  • PostgreSQL
  • LDAP
  • vpopmail
  • linuxconf
Unele variabile interne.

Exemplul de configurare
/etc/dovecot/conf.d/10-mail.conf:

% 1u este primul caracter al numelui de utilizator.

Iată câteva exemple pentru un anumit caz special al configurației sistemului de corespondență.

Cum se specifică parametrii

În Dovecot, setările care nu sunt specificate sunt aplicate în mod implicit. Acest lucru poate duce la consecințe interesante.

Luați în considerare acest exemplu

În același timp, în majoritatea exemplelor, aceasta este descrierea "nu destul de standard" a ascultătorului. Dacă ascultătorul nu este necesar în mod implicit, puteți utiliza pur și simplu formularul standard și, din anumite motive, parametrul rar întâlnit în exemple: cale

Ascultătorul a dispărut în mod implicit.

Mai întâi trebuie să instalați pachetul dovecot-lmtp.

Verificați și, dacă este necesar, activați suportul protocolului

"process_min_avail = 5" - Numărul de procese. Pentru site-urile cu încărcătură înaltă este logic să crească numărul de procese. Puteți experimenta în intervalul de la 5 la 20.
"executable = lmtp -L" - logare (trebuie să specificați un fișier log - a se vedea mai jos).

Configurați pluginurile etc.

"info_log_path = /var/log/dovecot-lmtp.log" este fișierul jurnal.

Și configurați transportul în Postfix

A doua linie este cel mai probabil necesară numai dacă Postfix a înlocuit complet Sendamil. Este destinat utilizatorilor non-virtual (și sistem).

SASL înseamnă "Simplă autentificare și securitate". SASL este o listă a cerințelor pentru mecanismele de autentificare și protocoale, pentru compatibilitatea lor cu SASL, așa cum este descris în RFC 4422. Protocoalele IMAP, POP3 și SMTP suportă SASL.

Mulți oameni confundă SASL cu o implementare specifică a SASL: biblioteca Cyrus SASL. Dovecot are propria sa implementare a SASL, care poate fi privită separat de Dovecot și "concurează" cu Cyrus SASL.

Postfix versiunea 2.3 și versiunile superioare suportă două tipuri de SASL: "dovecot" și "cyrus".

În consecință, în configurația Postfix, trebuie să specificați smtpd_sasl_type = dovecot. Acesta este doar un tip SASL, adică standardul inițiat de Dovecot.

Atunci când este utilizat în Postfix Numai LMTP, referințele la fișierele de configurare porumbar în Postfix nicăieri în altă parte nu trebuie să apară (cu excepția numelor proprii și prize SASL de tipul menționat mai sus).

Dovecot sprijină spațiu personalizabil (spațiul de nume) numele, în conformitate cu specificația „RFC 2342“ (din păcate, nu toți clienții l suport), instrucțiuni care conțin IMAP-client: în cazul în care sunt cutiile poștale, indiferent dacă acestea sunt private (privat), publice (publice ) sau partajate. La configurarea "spațiului de nume", poate fi configurat un delimitator, un prefix etc. și, de asemenea, a configurat accesul la mai multe locații de stocare a corespondenței, în diverse formate.

Titlurile secțiunilor (de ex. Namespace numesectiune), nu au nici o semnificație specială, dar permite actualizarea spațiu de nume existente (de ex. Ca și în „15-mailboxes.conf“) sau suprascrie „userdb“ -Settings utilizatori specifici (spațiu de nume / numesectiune / prefix = foo /).






Vedeți exemplul de mai jos.

După cum puteți vedea, separatorul de spațiu de nume afectează numai numele folderului IMAP, dar nu afectează calea reală a dosarului. Un separator de aspect real afectează structura efectivă a directorului din directorul părinte (vezi despre el în Maildir). Există un plugin listescape pentru setări mai flexibile de delimitare.

Un exemplu de amestecare a spațiului de nume mbox și Maildir

Un exemplu mai interesant (nu de la docuri) este un amestec de două Maildir. Conectăm fiecare utilizator - caseta utilizator "user2"

Aici folderul de utilizator "user2" apare în lista de dosare a fiecărei casete și va conține toate subfolderele copiilor, deși ea însăși (INBOX) nu va fi disponibilă (modificările necesită repornirea dovecotului).

Un alt exemplu mic din documentația oficială.
Trebuie să dați nume de nume de nume, de exemplu "docs".

Creăm un tabel în baza de date SQL

Acum, fiecare utilizator poate defini "locația" în spațiul de nume "docs"

Maildir stochează fiecare mesaj într-un fișier separat și cere ca fiecare să aibă un ID unic. Lista fișierelor și codurile lor corespunzătoare este stocată în fișierul "dovecot-uidlist".

Acest fișier nu trebuie blocat pentru citire. Se adaugă linii noi la sfârșitul fișierului. Datele din acesta nu pot fi modificate - înlocuite doar. Mesajele după livrarea finală nu pot fi modificate și pot fi înlocuite în întregime.

Pentru a accelera accesul la mii de mesaje în dosare, este logic să folosiți suportul de indexare a directorilor la nivelul sistemului de fișiere (acest lucru este posibil pentru noile versiuni ale ext3). Poate că este logic să folosiți pentru directorul de mail "ReiserFS" - un sistem de fișiere, ascuțit pentru a lucra rapid cu o mulțime de fișiere mici.

În mod implicit, Dovecot utilizează structura directorului Maildir ++. Aceasta înseamnă că toate dosarele sunt situate direct în interiorul directorului

De obicei, numele directorului din directorul părinte începe cu "." (puncte) - toate sunt stocate în directorul rădăcină ("INBOX"), inclusiv subdirectoarele (de ex.

/Maildir/.folder.subfolder/). Dar dacă utilizați parametrul ": LAYOUT = fs" în mail_location, atunci folderele pot fi stocate fără un punct în formatul obișnuit pentru sistemul de fișiere (de exemplu,

Exemplul de configurare
/etc/dovecot/conf.d/10-mail.conf:

Începând cu versiunea Dovecot 2.0, permisiunile pentru fișierele nou create nu mai sunt copiate din fișierul "dovecot-shared".

Atunci când se utilizează alte programe simultan cu Dovecot, accesul la directoare poate provoca probleme grave legate de lucrul cu un fișier al unui program și acțiuni simultane pe acesta de către altul.

Stocarea indexului poate fi forțată să precizeze una personală folosind fiecare, de exemplu ": INDEX =

/ public "pentru parametrul mail_location sau locație, de exemplu, în cazul accesului la directoare publice suplimentare, puteți atribui fiecărui utilizator propriul magazin de index.

IMPORTANT! Din versiunea 2.2 este necesar să se folosească: INDEXPVT.

În acest exemplu (este ușor schimbat și este diferit de exemplul din docuri oficiale) pentru fiecare utilizator, în plus față de cutia poștală lui, există acces la un director public, dar magazinul indexa un director public (cu numele atribuit „pub_index“), fiecare utilizator este în directorul său de origine.

IMPORTANT! Tipul = directoarele publice necesită o configurație ACL, altfel nu vor fi disponibile. Cel mai simplu lucru din exemplul de mai sus este setarea ACL global în directorul corespunzător prin crearea fișierului .DEFAULT. Pentru exemplul de mai sus, aceasta ar putea fi ceva de genul /etc/dovecot/acl/public/.DEFAULT cu permisiunile corespunzătoare. Vezi și nota Dovecot 2 - ACL.

În plus, trebuie amintit că folderul public rădăcină în sine, în sine, nu este un cataloagele pentru comenzi, și nu va conține literele până când manual toate formatul cerut subfoldere Maildir vor fi create (javră. Nou. Tmp). Apoi va fi disponibil pentru abonament. În acest caz, subfolderele, dacă sunt create, de exemplu prin MUA, vor fi disponibile pentru abonament și pot fi foldere de poștă electronică.

autentificare

Pentru autentificare, luând în considerare cazul particular al configurației din această serie de note, există astfel de fișiere:

  • /etc/dovecot/conf.d/10-auth.conf - specifică conexiunea (include) a fișierului "auth-sql.conf.ext".
  • /etc/dovecot/conf.d/auth-sql.conf.ext - descrie mecanismele de conectare. Driverul este sql pentru passdb, iar driver-ul este prefetch pentru userdb și așa mai departe.
  • /etc/dovecot/dovecot-sql.conf.ext - conține interogări către baza de date ("password_query" și "user_query").

auth-sql.conf.ext
În acest fișier, sunt configurate două secțiuni care implementează mecanismul "prefetch". Ideea este că puteți reduce numărul de interogări SQL și puteți scoate imediat toate valorile necesare în "password_query". În acest caz, în secțiunea "userdb" trebuie să specificați "driver = prefetch". Dar trebuie să luăm în considerare două nuanțe. În primul rând, pentru toți parametrii "userdb", primiți prin "password_query", va fi necesar să adăugați prefixul "userdb_" în cerere (a se vedea mai jos). În al doilea rând, secțiunea "userdb" va trebui să fie specificată de două ori, deoarece există cazuri când este necesar în întregime. În acest caz, ordinea în această repetare este semnificativă. Prima secțiune ar trebui să fie cea cu "driver = prefetch". Vedeți exemplele de mai jos.

Iată câteva exemple pentru un anumit caz special al configurației sistemului de corespondență.

Toate acestea pot fi realizate, de exemplu.

Dimensiunea mesajului virtual

  • Numerele totale ale variabilelor pot fi utilizate ca% sau cu un modem "L":% L
  • Variabilele de mediu pot fi accesate în%
  • În plus, variabilele evidente% și%

Modificatoare - aplicabile pentru fiecare variabilă (de exemplu,% Us = POP3)

  • % L - cu litere mici
  • % U - majusculă
  • % E - escaping characters " # 92; adăugând automat "# 92;" înaintea lor (pentru interogările SQL nu este necesar)
  • % X - parsarea unei variabile ca număr de 10 cifre și traducerea într-un hexazecimal
  • % R - reprezentarea valorii variabilei în ordine inversă
  • % H - hash de 32 de biți a valorii variabile, returnat în formă zecimală (pentru detalii - în documentul oficial).
  • % M - returnează șirul MD5 în format zecimal
  • . - returnează "subdomeniu.org" ca "sub, dc = domeniu, dc = org" (pentru cererile LDAP)
  • % T - elimină spațiile la început și la sfârșit

Puteți obține o variabilă de subreversă și opțional folosind "." specificați decalajul și numărul de caractere ale subreversului. De exemplu,% 2u dă primele două caractere ale numelui de utilizator. % 2.1u dă una, este al treilea caracter al numelui de utilizator.

Dacă offsetul este negativ, acesta este contorizat de la capăt la lungimea după '.' (Puncte). De exemplu,% -2.2i dă "45" pentru UID 12345 (ultimele două caractere ale UID din șir). Dacă offsetul este pozitiv și punctul este în afara valorii, se returnează un șir gol, dacă offsetul este negativ dincolo de valoare, atunci linia începe cu începutul.

Dacă lățimea cu prefixul egal cu 0 (zero), șirul este pur și simplu completat cu "0" și numai dacă este mai scurt. De exemplu, pot reveni la "0001", "1000" sau "12345". % 1.04i va returna "001", "000" și "2345" pentru aceste linii.

Modificatorii sunt aplicați de la stânga la dreapta, excluzând substringul preluat de la capătul liniei.

XEXEC Plugin

Interesant Protocol experimental IMAP-extensie (plug) care permite să ruleze orice aplicație de pe partea laterală a serverului echipei MUA stabilit prin fișa relevantă (de exemplu, Thunderbird). Puteți să vă asigurați că trimiterea mesajelor la MUA va apărea fără a utiliza SMTP. Doar mutați mesajul în dosarul dorit și. și așa mai departe. ) Descrierea oficială menționează posibile aplicații în cadrul grupului, etc.

Sursele de informații și link-uri sunt listate pe o pagină separată în partea de jos a paginii principale a subiectului:
Instalarea și configurarea serverului de e-mail







Trimiteți-le prietenilor: