След седем години от формирането на версия 2.3.0, е представена нова версия на многоплатформения IMAP-сървър Dovecot 2.4.0, която поддържа протоколите POP3 и IMAP4rev1 с популярни разширения, като SORT, THREAD, MULTIAPPEND, QUOTA, ACL, COMPRESS, NOTIFY, METADATA и IDLE, както и механизми за автентикация и криптиране (SASL, TLS, SCRAM, XOAUTH2). Dovecot запазва пълна съвместимост с класическите mbox и Maildir, използвайки външни индекси за повишаване на производителността. За разширяване на функционалността могат да се използват плъгини, чрез които са реализирани възможности като квоти, ACL, Push-известия, пълнотекстово търсене и виртуални пощенски кутии. Кодът на проекта се разпространява под лицензите LGPL и MIT.
Основни промени:
- Направени са промени, които нарушават обратната съвместимост с конфигурацията, използвана за версия 2.3.x. Например, е въведен нов синтаксис за разкриване на променливи („%{local_port}“ вместо „%a“ и т.н.) и модификатори („%{user | md5 | hexlify(1)}“ вместо „%1Mu“ и т.н.), задължително е посочването на име в секциите passdb и userdb, множество настройки са променени, а настройки за квоти са изнесени в отделна секция.
- Добавена е експериментална поддръжка на разширението SMTPUTF8 (RFC 6531) и режим „IMAP UTF8=ACCEPT“, позволяващи използването на символи от националните азбуки в имейл адреси, имена на хостове, имена на пощенски кутии и заглавия. За включване е необходима компилация с опцията „—enable-experimental-mail-utf8“ при извикване на скрипта configure и настройване на „mail_utf8_extensions=yes“.
- Добавена е поддръжка на схемата за хеширане на пароли ARGON2, SASL алгоритмите SCRAM-SHA-1 и SCRAM-SHA-256, както и на елиптичните криви X25519 и X448.
- В драйвера за автентикация ldap е добавена поддръжка на атрибути, включващи няколко стойности (multi-value).
- Добавена е поддръжка на TLS разширението Channel Bindings.
- При автентикация е реализирана възможността за отчет на хешовете JA3, позволяващи на базата на характеристиките на параметрите на свързването да се определи софтуерът, използван за установяване на връзката.
- Добавен е нов плъгин за пълнотекстово търсене fts-flatcurve, използващ движка Xapian.
- В IMAP е добавена поддръжка на кода за връщане INPROGRESS (RFC 9585), чрез който могат да се предават известия за хода на дълги операции.
- В lib-lua са реализирани DNS-клиент и HTTP-клиент.
- В lib-sasl е добавена поддръжка на механизмите SCRAM-SHA.
- В lmtp е добавена поддръжка за SNI (Server Name Indication), позволяваща свързването на настройки с името сървър, информация за което се предава в отворен формат по време на TLS сесията.
- В драйвера sqlite е добавена поддръжка на режима за водене на журнал на транзакции (WAL — Write-Ahead Logging).
- Автоматично се активира IMAP разширението COMPRESS за компресиране на данни, предавани през връзката с IMAP сървъра.
- Добавена е настройка auth_internal_failure_delay, която определя закъснението преди изпращането на отговор на клиента в случай на грешка при аутентификация поради вътрешен неуспех.
- Добавена е настройка fts_message_max_size, задаваща максимален размер на тялото на писмото, индексируемо от механизма за пълен текстов търсене.
- Добавена е настройка login_socket_path, указваща пътя към сокета, използван от login процесите.
- Добавена е настройка quota_mailbox_count, задаваща максимално допустимо число на създадените пощенски кутии.
- Добавена е настройка quota_mailbox_message_count, задаваща максимално допустимо число на съобщенията в една пощенска кутия.
- Добавена е настройка submission_add_received_header, управляваща добавянето на заглавие „Received:“ към писмата (може да се използва за скриване на информация за подателя).
- Добавена е настройка cassandra_log_retries за управление на отразяването в логовете на информация за грешки при повтарящи се запитвания към Apache Cassandra.
- Настройката acl_global_path е обявена за остаряла (поддръжката на глобални файлове и директории с ACL е прекратена).
- Поддръжката на пълнотекстовите индексиращи машини fts-lucene и fts-squat е прекратена (преключени в плъгини), утилити dsync (заменена с doveadm sync), командата IMAP SETQUOTA и настройките set_quota, архитектурата Dovecot Director, replicator (препоръчва се да се използва NFS), Sieve разширения notify, imapflags и vnd.dovecot.duplicate.
- На мястото на бази данни checkpassword, passdb и userdb за данни за аутентификация сега е внедрена базата данни Lua Authentication Database.
- Поддръжката на плъгини zlib, listescape, old-stats и mailbox-alias е прекратена.
- Поддръжката на драйвера Memcached е прекратена, вместо него е препоръчително да се използва драйвер Redis.
- Поддръжката на драйвера shadow е прекратена, вместо него е препоръчително да се използва база данни за аутентификация, базирана на PAM.
- Поддръжката на Berkeley DB в dict_db_config е прекратена.
- По подразбиране е деактивирана поддръжката за ненадеждни схеми за хеширане на пароли (за повторно активиране, следва да се използва параметърът auth_allow_weak_schemes).
- Поддръжката на версии на OpenSSL до 1.0.2 е прекратена.
Източник: opennet.ru
