Die Version des E-Mail-Servers Exim 4.99 wurde veröffentlicht, die gesammelte Fehlerbehebungen und neue Funktionen enthält. Der Code des Projekts ist in C geschrieben und steht unter der GPLv2+-Lizenz. Laut einer automatisierten Umfrage von etwa 500.000 E-Mail-Servern beträgt der Marktanteil von Exim 56 % (vor einem Jahr 59,06 %), Postfix wird auf 37,45 % (34,68 %) der E-Mail-Server verwendet, Sendmail – 3,53 % (3,42 %), MailEnable – 1,84 % (1,81 %), MDaemon – 0,40 % (0,37 %), Microsoft Exchange – 0,20 % (0,17 %).
Wesentliche Änderungen:
- Die Unterstützung für den ESMTP-Befehl „ATRN“ (Authenticated TURN) wurde hinzugefügt, der es ermöglicht, die Rollen von Server und Client im Laufe der Nachrichtenübermittlung zu wechseln. Der Befehl kann zur Organisation der E-Mail-Zustellung an Systeme mit dynamischen IP-Adressen oder unzuverlässigem Internetzugang verwendet werden. Ein solches System kann sich als Client mit einem SMTP-Server verbinden und danach mithilfe des ATRN-Befehls die Rolle des Servers übernehmen, um gespeicherte Nachrichten zu empfangen. Der Befehl kann nur nach erfolgreicher Authentifizierung und bei Vorhandensein einer genehmigenden ACL (acl_smtp_atrn) verwendet werden.
- Die meisten Exim-Komponenten können nun als herunterladbare Module zusammengestellt werden. Beispielsweise können JSON- und LDAP-Lookup-Engines, Filter, Authentifizierungs- und Routingtreiber, PAM-Komponenten, RADIUS, Perl, SPF, DKIM, DMARC und ARC sowie alle Transportarten außer SMTP als herunterladbare Module konfiguriert werden.
- Die Möglichkeit, die Unterstützung von Exim- und Sieve-Filtern während des Builds zu deaktivieren, wurde implementiert.
- Die Unterstützung für DNS SRV-Einträge (Service Location Record) wurde hinzugefügt, um die Unterstützung von TLS (Transport Layer Security) durch Mail- Servern gearbeitet werden. Empfänger zu bestimmen.
- Eine experimentelle Build-Option „EXPERIMENTAL_SPF_PERL“ wurde hinzugefügt, die eine alternative Implementierung des SPF (Sender Policy Framework)-Authentifizierungsmechanismus verwendet, die das Perl-Modul Perl Mail::SPF anstelle der Bibliothek libspf2 nutzt, bei der es Begleitprobleme gibt.
- Eine experimentelle Build-Option „EXPERIMENTAL_NMH“ mit einer Implementierung der Lookup-Engine zur Überprüfung wurde hinzugefügt IP-Adressen im NMH (Net-Masked Hero) Speicher.
- Die Konfigurationsdatei wurde um die Einstellung „tls_early_banner_hosts“ ergänzt, um die Hosts zu definieren, auf die der Mechanismus „TLS Early Data“ (0-RTT) zur Übertragung des SMTP-Banners vor der Beendigung des TLS-Verbindungsaufbaus angewendet werden soll.
- Die Option „sieve_inbox“ wurde hinzugefügt, um den Namen der Mailbox-Datei festzulegen, in die Nachrichten gespeichert werden, die durch die Einstellung „redirect_router“ in die Sieve-Filter umgeleitet werden.
- Eine Variable „connection_id“ wurde hinzugefügt, die die ID der akzeptierten Verbindung enthält. Diese Variable kann bei der Formatierung der Log-Ausgabe verwendet werden.
- Die Ereignisse smtp:fail:protocol und smtp:fail:syntax wurden implementiert, um Fehler im Zusammenhang mit dem Protokoll und der Syntax von SMTP-Befehlen zu verfolgen.
- Der Transport „socks_proxy“ kann jetzt einen Leerstring als Wert annehmen, was als fehlendes Proxying interpretiert wird.
- Die Variablen $dmarc_alignment_spf und $dmarc_alignment_dkim wurden hinzugefügt, die die Ergebnisse der SPF- und DKIM-Überprüfungen widerspiegeln.
- Die Verwendung von IPv6-Verbindungen für den Zugriff auf die MySQL- und PostgreSQL-Datenbanken wurde ermöglicht.
- Es ist nun zulässig, die in den Transportparametern angegebene Absenderadresse (envelope-from) für direkte Lieferungen (cutthrough deliveries) und zur Überprüfung der Existenz von Empfängern zu verwenden.
- Die Möglichkeit zur Verwendung von Variablen und Ausdrücken für die dynamische Generierung von Optionen für «hosts_randomize» im Router «manualroute» und im Transport «smtp» wurde hinzugefügt. Ebenso wurde die Unterstützung für die dynamische Generierung von Optionen für «fallback_hosts» in allen Routern und im Transport «smtp» ergänzt.
- Die Konfigurationsdatei wurde um die Option «log_ports» zur Filterung der in die Logs geschriebenen Portnummern erweitert. Beispielsweise werden bei Angabe von «log_ports = !25 : !587» in den Logs die Einträge für outgoing_port und incoming_interface angezeigt, die nicht mit den Ports 25 und 587 verbunden sind.
- Die Möglichkeit, Informationen über die beim Aufbau einer SMTP-Verbindung übermittelten Befehle und Antworten sowie Angaben zur Verwendung von TLS bei der Verbindung (Markierung «tls_on_connect») in die Logs zu schreiben, wurde hinzugefügt.
- Die Option «no_wr» wurde hinzugefügt, um das Schreiben von Ergebnissen von Lookup-Operationen in den Cache zu deaktivieren.
- Eine neue Befehlszeilenoption «-dS» zur Ausgabe von Debugging-Informationen vor dem Parsen der Konfigurationsdatei wurde eingeführt.
- In die mit der Authentifizierung fehlgeschlagenen Nachrichten in den Logs wurden die Tags «H=» und «U=» eingefügt, die den Host und den Benutzernamen anzeigen.
Quelle: opennet.ru
