Nach sieben Jahren seit der Veröffentlichung der Version 2.3.0 wurde der neue Zweig des plattformübergreifenden IMAP-Servers Dovecot 2.4.0 vorgestellt, der die Protokolle POP3 und IMAP4rev1 mit beliebten Erweiterungen wie SORT, THREAD, MULTIAPPEND, QUOTA, ACL, COMPRESS, NOTIFY, METADATA und IDLE sowie Authentifizierungs- und Verschlüsselungsmechanismen (SASL, TLS, SCRAM, XOAUTH2) unterstützt. Dovecot bleibt vollständig kompatibel mit den klassischen mbox und Maildir und verwendet externe Indizes zur Leistungssteigerung. Zur Erweiterung der Funktionalität können Plugins verwendet werden, über die Funktionen wie Quoten, ACL, Push-Benachrichtigungen, Volltextsuche und virtuelle Postfächer realisiert werden. Der Projektcode wird unter den Lizenzen LGPL und MIT veröffentlicht.
Hauptänderungen:
- Änderungen wurden vorgenommen, die die Abwärtskompatibilität mit der für den Zweig 2.3.x verwendeten Konfiguration beeinträchtigen. Beispielsweise wird eine neue Syntax für die Variablenauflösung verwendet („%{local_port}“ anstelle von „%a“ usw.) und für die Modifizierer („%{user | md5 | hexlify(1)}“ anstelle von „%1Mu“ usw.), es ist zwingend erforderlich, einen Namen in den Abschnitten passdb und userdb anzugeben, viele Einstellungen wurden umbenannt und die Einstellungen für Quoten wurden in einen separaten Abschnitt verschoben.
- Experimentelle Unterstützung für die Erweiterung SMTPUTF8 (RFC 6531) und den Modus „IMAP UTF8=ACCEPT“ wurde hinzugefügt, die es ermöglichen, Zeichen nationaler Alphabeten in E-Mail-Adressen, Hostnamen, Postfachnamen und Überschriften zu verwenden. Um dies zu aktivieren, ist ein Build mit der Option „—enable-experimental-mail-utf8“ beim Aufruf des Konfigurationsskripts erforderlich, und die Einstellung „mail_utf8_extensions=yes“ muss gesetzt werden.
- Unterstützung für das Passwort-Hashing-Schema ARGON2, die SASL-Algorithmen SCRAM-SHA-1 und SCRAM-SHA-256 sowie die elliptischen Kurven X25519 und X448 wurde hinzugefügt.
- Der LDAP-Authentifizierungsdriver unterstützt jetzt Attribute, die mehrere Werte (multi-value) enthalten.
- Unterstützung für die TLS-Erweiterung Channel Bindings wurde hinzugefügt.
- Bei der Authentifizierung wurde die Möglichkeit zur Berücksichtigung von JA3-Hashes implementiert, die es ermöglichen, die verwendete Software zur Verbindung basierend auf den Eigenschaften der Verbindungsparameter zu identifizieren.
- Ein neues Plugin für die Volltextsuche fts-flatcurve wurde hinzugefügt, das die Xapian-Engine verwendet.
- IMAP unterstützt jetzt den Rückgabecode INPROGRESS (RFC 9585), über den Benachrichtigungen über den Fortschritt lang laufender Operationen übermittelt werden können.
- In lib-lua wurden ein DNS-Client und ein HTTP-Client implementiert.
- In lib-sasl wurde Unterstützung für die SCRAM-SHA-Mechanismen hinzugefügt.
- Im lmtp wurde die Unterstützung von SNI (Server Name Indication) hinzugefügt, die es ermöglicht, Einstellungen an einen Namen zu binden. Server, dessen Informationen im Klartext während der TLS-Sitzung übertragen werden.
- Im SQLite-Treiber wurde die Unterstützung des Transaktionsprotokollierungsmodus (WAL – Write-Ahead Logging) hinzugefügt.
- Die automatische Aktivierung der IMAP-Erweiterung COMPRESS zur Komprimierung von Daten, die über die Verbindung zum IMAP-Server übertragen werden, wurde sichergestellt.
- Eine Einstellung auth_internal_failure_delay wurde hinzugefügt, die die Verzögerung vor der Antwort an den Client bei einer Authentifizierungsfehler aufgrund eines internen Fehlers definiert.
- Eine Einstellung fts_message_max_size wurde hinzugefügt, die die maximale Größe des E-Mail-Inhalts bestimmt, die vom Volltextsuch-Engine indiziert werden kann.
- Eine Einstellung login_socket_path wurde hinzugefügt, die den Pfad zum Socket angibt, der von den Login-Prozessen verwendet wird.
- Eine Einstellung quota_mailbox_count wurde hinzugefügt, die die maximal zulässige Anzahl an erstellbaren Mailboxen angibt.
- Eine Einstellung quota_mailbox_message_count wurde hinzugefügt, die die maximal zulässige Anzahl an Nachrichten in einer Mailbox angibt.
- Eine Einstellung submission_add_received_header wurde hinzugefügt, die das Hinzufügen des Headers "Received:" zu E-Mails steuert (kann verwendet werden, um Informationen über den Absender zu verbergen).
- Eine Einstellung cassandra_log_retries wurde hinzugefügt, um das Loggen von Informationen über Fehler bei wiederholten Anfragen an Apache Cassandra zu steuern.
- Die Einstellung acl_global_path wurde als veraltet erklärt (die Unterstützung für globale Dateien und Verzeichnisse mit ACL wurde eingestellt).
- Die Unterstützung für die Volltextindizes fts-lucene und fts-squat (in Plugins ausgelagert), das Tool dsync (ersetzt durch doveadm sync), die IMAP-Befehle SETQUOTA und die Einstellungen set_quota, die Architektur Dovecot Director, replicator (es wird empfohlen, NFS zu verwenden), sowie die Sieve-Erweiterungen notify, imapflags und vnd.dovecot.duplicate wurde eingestellt.
- Die Datenbank checkpassword, passdb und userdb für Authentifizierungsdaten wurde durch die Lua Authentication Database ersetzt.
- Die Unterstützung für die Plugins zlib, listescape, old-stats und mailbox-alias wurde eingestellt.
- Die Unterstützung für den Memcached-Treiber wurde eingestellt, stattdessen wird empfohlen, den Redis-Treiber zu verwenden.
- Die Unterstützung für den shadow-Treiber wurde eingestellt, stattdessen wird empfohlen, eine PAM-basierte Authentifizierungsdatenbank zu verwenden.
- Die Unterstützung für Berkeley DB in dict_db_config wurde eingestellt.
- Die Unterstützung für unsichere Hashing-Schemata für Passwörter ist standardmäßig deaktiviert (um dies wieder zu aktivieren, sollte der Parameter auth_allow_weak_schemes verwendet werden).
- Die Unterstützung für OpenSSL-Versionen vor 1.0.2 wurde eingestellt.
Quelle: opennet.ru
