Nach einem Jahr der Entwicklung wurde die neue stabile Version des Mailservers Postfix - 3.6.0 veröffentlicht. Gleichzeitig wurde die UnterstĂŒtzung fĂŒr die Version Postfix 3.2, die Anfang 2017 veröffentlicht wurde, eingestellt. Postfix ist eines der wenigen Projekte, das gleichzeitig hohe Sicherheit, ZuverlĂ€ssigkeit und Leistung bietet, was durch eine durchdachte Architektur und eine strenge Politik zur Codierung und ĂberprĂŒfung von Patches erreicht wurde. Der Code des Projekts wird unter den Lizenzen EPL 2.0 (Eclipse Public License) und IPL 1.0 (IBM Public License) veröffentlicht.
Laut einer automatisierten Umfrage im April verwenden etwa 600.000 E-Mail- Server, Postfix wird auf 33,66 % (vor einem Jahr 34,29 %) der Mailserver eingesetzt, der Anteil von Exim betrÀgt 59,14 % (57,77 %), Sendmail - 3,6 % (3,83 %), MailEnable - 2,02 % (2,12 %), MDaemon - 0,60 % (0,77 %), Microsoft Exchange - 0,32 % (0,47 %).
Hauptneuheiten:
- Aufgrund von Ănderungen an den internen Protokollen, die fĂŒr die Interaktion zwischen den Komponenten von Postfix verwendet werden, ist es vor einem Update erforderlich, den Mailserver Server mit dem Befehl âpostfix stopâ zu stoppen. Andernfalls kann es zu Problemen bei der Interaktion mit den Prozessen pickup, qmgr, verify, tlsproxy und postscreen kommen, was zu Verzögerungen beim Versand von E-Mails bis zum Neustart von Postfix fĂŒhren kann.
- Es wurden Bereinigungen der Begriffe âwhiteâ und âblackâ vorgenommen, die von einigen Mitgliedern der Gemeinschaft als rassistische Diskriminierung wahrgenommen werden. Statt âwhitelistâ und âblacklistâ sollten nun âallowlistâ und âdenylistâ verwendet werden (zum Beispiel die Parameter postscreen_allowlist_interfaces, postscreen_denylist_action und postscreen_dnsbl_allowlist_threshold). Diese Ănderungen betreffen die Dokumentation, die Einstellungen des Prozesses postscreen (integrierte Firewall) und die Protokollierung.
Um die vorherigen Begriffe in den Protokollen beizubehalten, gibt es die Option ârespectful_logging = noâ, die in der main.cf vor âcompatibility_level = 3.6â angegeben werden sollte. Die UnterstĂŒtzung der alten Namen von postscreen-Einstellungen bleibt fĂŒr die RĂŒckwĂ€rtskompatibilitĂ€t erhalten. Auch die Konfigurationsdatei âmaster.cfâ bleibt vorerst unverĂ€ndert.
- Im Modus "compatibility_level = 3.6" wurde standardmĂ€Ăig auf die Verwendung der Hash-Funktion SHA256 anstelle von MD5 umgestellt. Bei der Einstellung einer frĂŒheren Version im Parameter compatibility_level wird weiterhin MD5 verwendet, aber fĂŒr Einstellungen im Zusammenhang mit Hashes, bei denen der Algorithmus nicht ausdrĂŒcklich definiert ist, wird eine Warnung im Protokoll ausgegeben. Die UnterstĂŒtzung der Exportversion des Diffie-Hellman-SchlĂŒsselaustauschprotokolls wurde eingestellt (der Wert des Parameters tlsproxy_tls_dh512_param_file wird jetzt ignoriert).
- Die Diagnose von Problemen, die mit der Angabe eines falschen Verarbeitungsprogramms in master.cf verbunden sind, wurde vereinfacht. Um solche Fehler zu identifizieren, kĂŒndigt nun jeder interne Dienst, einschlieĂlich postdrop, den Protokollnamen vor dem Datenaustausch an, und jeder Client-Prozess, einschlieĂlich sendmail, ĂŒberprĂŒft die Ăbereinstimmung des deklarierten Protokollnamens mit der unterstĂŒtzten Version.
- Ein neuer Typ der Zuordnungen "local_login_sender_maps" wurde hinzugefĂŒgt, um die Zuordnung der Envelope-Absenderadresse (die im Befehl "MAIL FROM" wĂ€hrend der SMTP-Sitzung ĂŒbergeben wird) in den Prozessen sendmail und postdrop flexibel zu steuern. Zum Beispiel können Sie die folgenden Einstellungen verwenden, um lokalen Benutzern, auĂer root und postfix, zu erlauben, in sendmail nur ihre Logins anzugeben, indem Sie die UID an den Namen binden: /etc/postfix/main.cf: local_login_sender_maps = inline:{ { root = *}, { postfix = * } }, pcre:/etc/postfix/login_senders /etc/postfix/login_senders: # Es ist sowohl die Angabe von Logins als auch von Formen wie login@domain erlaubt. /(âŠ+)/(.*) $1 $1âŠ@example.com
- Die Einstellung "smtpd_relay_before_recipient_restrictions=yes" wurde hinzugefĂŒgt und standardmĂ€Ăig aktiviert, bei der der SMTP-Server die smtpd_relay_restrictions vor den smtpd_recipient_restrictions ĂŒberprĂŒft, und nicht umgekehrt, wie zuvor.
- Ein Parameter "smtpd_sasl_mechanism_list" wurde hinzugefĂŒgt, der standardmĂ€Ăig auf "!external, static:rest" eingestellt ist, um verwirrende Fehler zu vermeiden, wenn das SASL-Backend den Modus "EXTERNAL" angibt, der in Postfix nicht unterstĂŒtzt wird.
- Bei der Bestimmung von Namen im DNS wird standardmĂ€Ăig eine neue API verwendet, die Multithreading (threadsafe) unterstĂŒtzt. Um mit der alten API zu kompilieren, sollte beim Bau "make makefiles CCARGS='-DNO_RES_NCALLSâŠ'" angegeben werden.
- Der Modus âenable_threaded_bounces = yesâ wurde hinzugefĂŒgt, um Benachrichtigungen ĂŒber Zustellprobleme, verzögerte Zustellungen oder ZustellbestĂ€tigungen mit derselben Diskussions-ID zu ersetzen (die Benachrichtigung wird vom E-Mail-Client im selben Thread zusammen mit den anderen Nachrichten der Korrespondenz angezeigt).
- Die Verwendung der Systemdatenbank /etc/services zur Bestimmung der TCP-Portnummern fĂŒr SMTP und LMTP wurde standardmĂ€Ăig eingestellt. Stattdessen werden die Portnummern ĂŒber den Parameter known_tcp_ports konfiguriert (standardmĂ€Ăig lmtp=24, smtp=25, smtps=submissions=465, submission=587). Falls ein Dienst in known_tcp_ports fehlt, wird weiterhin /etc/services verwendet.
- Das KompatibilitĂ€tslevel (âcompatibility_levelâ) wurde auf den Wert â3.6â angehoben (in der Vergangenheit wurde der Parameter zweigeteilt, neben 3.6 werden auch die Werte 0 (Standard), 1 und 2 unterstĂŒtzt). ZukĂŒnftig wird das âcompatibility_levelâ auf die Versionsnummer geĂ€ndert, in der inkompatible Ănderungen vorgenommen wurden. Zum ĂberprĂŒfen der KompatibilitĂ€tsstufen wurden in main.cf und master.cf separate Vergleichsoperatoren wie â<=levelâ und â< levelâ hinzugefĂŒgt (die Standardvergleichsoperatoren sind nicht geeignet, da sie 3.10 als kleiner als 3.9 ansehen).
Quelle: opennet.ru
