Po roce vývoje byla vydána nová stabilní větev poštovního serveru Postfix, verze 3.12.0. Zároveň byla ukončena podpora pro Postfix 3.7, vydaný na začátku roku 2022. Kód projektu je napsán v jazyce C a je distribuován pod licencí EPL 2.0 (Eclipse Public License) a IPL 1.0 (IBM Public License).
Postfix je jeden z mála projektů, který kombinuje vysokou bezpečnost, spolehlivost a výkon, čehož je dosaženo díky multiprocesové architektuře, která izoluje jednotlivé obslužné rutiny, a také díky přísné struktuře kódu a zásadám auditu záplat. Pro ochranu před chybami paměti projekt používá chráněné verze funkcí pro alokaci a dealokaci paměti a také sadu abstraktních obalových funkcí pro správu vyrovnávací paměti (kontrola přeplnění vyrovnávací paměti a přístup k uvolněné paměti), operace se soubory, formátování výstupu, bufferovaný I/O a manipulaci s řetězci (včetně možností práce s řetězci libovolné velikosti a automatické změny velikosti řetězců).
Podle závěrečného automatizovaného průzkumu mezi přibližně 500 tisíci poštovními zásilkami servery (publikování zprávy bude ukončeno po červenci 2025), Postfix se používá na 37.88 % (36.81 % před rokem) poštovních serverů, podíl Eximu je 55.59 % (56.61 % před rokem), Sendmail - 3.55 % (3.60 %), MailEnable - 1.81 % (1.82 %), MDaemon - 0.40 % (0.40 %), Microsoft Exchange - 0.20 % (0.19 %), OpenSMTPD - 0.12 % (0.09 %).
Hlavní inovace:
- Byly provedeny práce na zjednodušení migrace z vyhledávacích tabulek „hash:“ a „btree:“ na „lmdb:“ nebo „cdb:“ z důvodu ukončení podpory knihoven BerkeleyDB v některých linuxových distribucích. Pro zachování kompatibility s nástroji Mailman, které při přidávání nebo odebírání e-mailových seznamů spouštějí příkaz „postmap hash:/cesta/k/souboru“, nyní Postfix podporuje automatické přesměrování těchto příkazů na varianty s podporovanými typy databází.
- Ve výchozím nastavení jsou povolena připojení k SMTP serverům pomocí šifrování TLS. V nastavení SMTP klienta je parametr smtp_tls_security_level nastaven na „may“, pokud je Postfix sestaven s podporou TLS. Hodnota „may“ povoluje TLS pro servery, které podporují šifrování, ale umožňuje zálohování přenosu dat v prostém textu, pokud server TLS nepodporuje.
- ESMTP podporuje rozšíření „REQUIRETLS“ (RFC 8689), které umožňuje odesílateli požádat o garantované šifrování TLS v celé cestě doručení zprávy. V tomto režimu musí jakýkoli server SMTP nebo LMTP účastnící se přeposílání zpráv podporovat REQUIRETLS a silné ověřování prostřednictvím DANE nebo STS. Při předávání zprávy v řetězci na další servery musí být také použito rozšíření REQUIRETLS.
- Úroveň zabezpečení TLS se nyní odráží v protokolech, což znamená, že pokud je k přenosu zprávy vyžadována úroveň REQUIRETLS, budou nyní do protokolu uloženy informace o použití úrovně REQUIRETLS.
- Byl přidán parametr smtp_tls_enforce_sts_mx_patterns. Tento parametr umožňuje kompatibilitu mezi klientem Postfix SMTP a pluginy MTA-STS (MTA Strict Transport Security), které vyžadují podporu TLSRPT pro přesměrování atributů STS. Pokud je tento parametr ve výchozím nastavení povolen, klient Postfix SMTP se připojí k serveru MX, pouze pokud jeho název odpovídá vzoru zadanému v zásadách STS. V opačném případě bude použito starší chování – připojení k serverům MX na základě záznamů DNS MX, pokud certifikát serveru splňuje zásady STS. Mechanismus MTA-STS umožňuje informovat klienta připojujícího se přes nezabezpečený kanál o možnosti a parametrech pro navázání zabezpečeného připojení TLS. Podpora pro tento parametr byla také přidána do utilit postfix-tlspol a postfix-mta-sts-resolver.
- Přidána podpora pro kvantově odolné šifrovací algoritmy při sestavování s OpenSSL 3.5 a novějšími verzemi.
- Šestnáct konfiguračních parametrů bylo zastaralých a při jejich použití se v protokolu zobrazí varování, že budou v budoucí verzi odstraněny. Mezi tyto zastaralé parametry patří „virtual_maps“, „fallback_relay“, „postscreen_whitelist_interfaces“ a „smtpd_client_connection_limit_exceptions“.
- Přidána podpora pro výstup dat ve formátu JSON pro příkazy: "postconf -j|-jM|-jF|-jP", "postalias -jq|-js", "postmap -jq|-js" a "postmulti -jl".
- Vylepšeno zpracování chyb ve filtrech Milter, ke kterým dochází při zpracování zpráv přijatých prostřednictvím dlouhodobě navázaných SMTP připojení. Parametr #milter_default_action byl změněn z „tempfail“ na „shutdown“, což znamená ukončení připojení ke klientovi.
Zdroj: opennet.ru
