Po sedmih letih od izdaje različice 2.3.0 je predstavljena nova veja večplatformskega IMAP strežnika Dovecot 2.4.0, ki podpira protokole POP3 in IMAP4rev1 s priljubljenimi razširitvami, kot so SORT, THREAD, MULTIAPPEND, QUOTA, ACL, COMPRESS, NOTIFY, METADATA in IDLE, ter mehanizmi avtentikacije in šifriranja (SASL, TLS, SCRAM, XOAUTH2). Dovecot ohranja popolno združljivost s klasičnimi mbox in Maildir, pri čemer uporablja zunanje indekse za izboljšanje zmogljivosti. Za širitev funkcionalnosti se lahko uporabljajo vtičniki, preko katerih so implementirane funkcionalnosti, kot so kvote, ACL, Push obvestila, polno besedilno iskanje in virtualne poštne predale. Koda projekta je na voljo pod licencami LGPL in MIT.
Glavne spremembe:
- Vnosi so bili spremenjeni, kar krši povratno združljivost s konfiguracijo, uporabljeno v veji 2.3.x. Na primer, uvedena je nova sintaksa razkrivanja spremenljivk ("%{local_port}" namesto "%a" itd.) in modifikatorjev ("%{user | md5 | hexlify(1)}" namesto "%1Mu" itd.), obvezno je navedba imena v sekcijah passdb in userdb, preimenovane so številne nastavitve, nastavitve kvot so bile premaknjene v ločeno sekcijo.
- Dodana je eksperimentalna podpora za razširitev SMTPUTF8 (RFC 6531) in način "IMAP UTF8=ACCEPT", ki omogočata uporabo znakov nacionalnih abeced v e-poštnih naslovih, imenih gostiteljev, imenih poštnih predalov in glavi. Za omogočanje je potrebna gradnja z možnostjo "--enable-experimental-mail-utf8" pri klicu skripte configure in nastavitev "mail_utf8_extensions=yes".
- Dodana je podpora za shemo razprševanja gesel ARGON2, SASL algoritme SCRAM-SHA-1 in SCRAM-SHA-256, eliptične krivulje X25519 in X448.
- V avtentikacijskem gonilniku ldap je dodana podpora za atribute, ki vključujejo več vrednosti (multi-value).
- Dodana je podpora za TLS razširitev Channel Bindings.
- Pri avtentikaciji je uvedena možnost upoštevanja hashov JA3, ki omogočajo določanje programske opreme, ki se uporablja za vzpostavitev povezave, na podlagi značilnosti parametrov povezave.
- Dodana je nova vtičnik za polno besedilno iskanje fts-flatcurve, ki uporablja Xapian motor.
- V IMAP je dodana podpora za kodo vračila INPROGRESS (RFC 9585), preko katere se lahko prenašajo obvestila o napredku dolgotrajnih operacij.
- V lib-lua so implementirani DNS odjemalec in HTTP odjemalec.
- V lib-sasl je dodana podpora za mehanizme SCRAM-SHA.
- V lmtp je dodana podpora za SNI (Server Name Indication), ki omogoča vezavo nastavitev na ime strežnika, informacije o tem pa se pošiljajo v odprti obliki v seji TLS.
- V sqlite gonilniku je dodana podpora za način beleženja transakcij (WAL — Write-Ahead Logging).
- Zagotavlja se samodejno vključevanje IMAP razširitve COMPRESS za stiskanje podatkov, ki se pošiljajo preko povezave z IMAP strežnikom.
- Dodana je nastavitev auth_internal_failure_delay, ki določa zamudo pred pošiljanjem odgovora stranki v primeru napake pri overjanju zaradi notranje napake.
- Dodana je nastavitev fts_message_max_size, ki določa največjo velikost telesa sporočila, ki ga indeksira motor za polno besedilo.
- Dodana je nastavitev login_socket_path, ki označuje pot do vtičnika, ki ga uporabljajo postopki prijave.
- Dodana je nastavitev quota_mailbox_count, ki določa največje dovoljeno število ustvarjenih poštnih predalov.
- Dodana je nastavitev quota_mailbox_message_count, ki določa največje dovoljeno število sporočil v enem poštnem predalu.
- Dodana je nastavitev submission_add_received_header, ki upravlja dodajanje glave 'Received:' k sporočilom (lahko se uporablja za skrivanje informacij o pošiljatelju).
- Dodana je nastavitev cassandra_log_retries za upravljanje beleženja informacij o napakah pri ponovnih poizvedbah v Apache Cassandri.
- Nastavitev acl_global_path je razglašena za zastarelo (podpora za globalne datoteke in imenike z ACL je prenehala).
- Prenehana je podpora za indeksatorje polnega besedila fts-lucene in fts-squat (premaknjeni v vtičnike), orodje dsync (zamenjano z doveadm sync), ukaze IMAP SETQUOTA in nastavitvami set_quota, arhitekturo Dovecot Director, replicator (priporočljivo je uporabiti NFS), Sieve razširitve notify, imapflags in vnd.dovecot.duplicate.
- Namesto DB checkpassword, passdb in userdb za podatke o overjanju je prišla DB Lua Authentication Database.
- Prenehana je podpora za vtičnike zlib, listescape, old-stats in mailbox-alias.
- Prenehana je podpora za gonilnik Memcached, namesto njega pa je priporočljivo uporabiti gonilnik Redis.
- Prenehana je podpora za gonilnik shadow, namesto njega pa je priporočljivo uporabiti bazo podatkov za overjanje, ki temelji na PAM.
- Prenehana je podpora za Berkeley DB v dict_db_config.
- Podpora za nezanesljive sheme za hashiranje gesel je privzeto onemogočena (za ponovno omogočitev uporabite parameter auth_allow_weak_schemes).
- Prenehana je podpora za različice OpenSSL do 1.0.2.
Izvor: opennet.ru
