Po roce vývoje byla zveřejněna nová stabilní verze poštovního serveru Postfix — 3.12.0. Současně byla oznámena ukončení podpory verze Postfix 3.7, vydané na začátku roku 2022. Kód projektu je napsán v jazyce C a je distribuován pod licencemi EPL 2.0 (Eclipse Public License) a IPL 1.0 (IBM Public License).
Postfix je jeden z mála projektů, které kombinují vysokou bezpečnost, spolehlivost a výkon, což se podařilo díky víceprocesorové architektuře, která izoluje jednotlivé zpracovatele, a také díky přísné politice kódování a auditu patchů. Pro ochranu před chybami při práci s pamětí projekt využívá zabezpečené varianty funkcí pro alokaci a uvolnění paměti, stejně jako soubor abstraktních funkčních obalů pro práci s buffery (kontrola přetečení bufferu a přístupu k uvolněné paměti), souborovými operacemi, formátováním výstupu, vyrovnávacím vstupem/výstupem a manipulacemi s řetězci (včetně možností pro práci s řetězci libovolné velikosti a automatického přizpůsobení velikosti řetězců).
Podle finálního automatizovaného průzkumu přibližně 500 tisíc poštovních servery (po červenci 2025 budou zprávy přestány zveřejňovat), Postfix je používán na 37,88% (před rokem 36,81%) poštovních serverů, podíl Exim činí 55,59% (před rokem 56,61%), 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í novinky:
- Byla provedena práce na zjednodušení migrace z vyhledávacích tabulek «hash:» a «btree:» na «lmdb:» nebo «cdb:», v souvislosti s ukončením dodávek některých distribucí Linux knihoven BerkeleyDB. Pro zachování kompatibility s nástrojem Mailman, který spouští příkaz «postmap hash:/path/to/file» při přidávání nebo odstraňování mailing listů, byla do Postfixu přidána podpora automatického přesměrování těchto příkazů na varianty s podporovanými typy databází.
- Ve výchozím nastavení je povoleno připojení k SMTP serverům pomocí šifrování TLS. V nastavení SMTP klienta je parametr smtp_tls_security_level nastaven na hodnotu «may», pokud je Postfix sestaven s podporou TLS. Hodnota «may» zahrnuje použití TLS pro servery s podporou šifrování, ale umožňuje vrátit se k otevřenému přenosu dat, pokud server TLS nepodporuje.
- V ESMTP byla implementována podpora rozšíření „REQUIRETLS“ (RFC 8689), které umožňuje odesílateli požádat o zaručené TLS šifrování během celé cesty doručení zprávy. V tomto režimu musí každý SMTP a LMTP server zapojený do přesměrování zprávy podporovat REQUIRETLS a přísnou autentizaci prostřednictvím DANE nebo STS, a při přenosu zprávy řetězcem dalších serverů také používat REQUIRETLS.
- Zajištěno zaznamenávání do bezpečnostních logů TLS, tj. pokud pro přenos zprávy byl požadován úroveň REQUIRETLS, informace o použití REQUIRETLS bude nyní uložena v logu.
- Byl přidán parametr smtp_tls_enforce_sts_mx_patterns, který zahrnuje režim kompatibility mezi SMTP klientem Postfix a pluginy MTA-STS (MTA Strict Transport Security), které vyžadují zapnutí podpory TLSRPT pro přesměrování atributů STS. Při nastavení tohoto parametru, který je ve výchozím nastavení aktivní, se SMTP klient Postfix připojí k MX serveru pouze pokud jeho jméno odpovídá vzoru uvedenému v politikách STS. Jinak se použije staré chování — možnost připojení k MX serverům na základě MX záznamů v DNS při splnění podmínek certifikátu serveru podle politik STS. Mechanismus MTA-STS umožňuje informovat klienta, který se připojil prostřednictvím nezabezpečeného spojení, o možnostech a parametrech nastavení zabezpečeného TLS připojení. Podpora parametru byla také přidána do nástrojů postfix-tlspol a postfix-mta-sts-resolver.
- Byla přidána podpora pro šifrovací algoritmy odolné vůči útokům kvantových počítačů při sestavování s OpenSSL 3.5 a novějšími verzemi.
- 16 konfiguračních parametrů bylo převedeno do kategorie zastaralých, při jejichž použití se nyní do logu vypíše varování o jejich odstranění v některé z budoucích verzí. Mezi zastaralé parametry patří například „virtual_maps“, „fallback_relay“, „postscreen_whitelist_interfaces“ a „smtpd_client_connection_limit_exceptions“.
- Byla přidána podpora pro export dat ve formátu JSON pro příkazy: „postconf -j|-jM|-jF|-jP“, „postalias -jq|-js“, „postmap -jq|-js“ a „postmulti -jl“.
- Bylo zlepšeno zpracování chyb ve filtrech Milter, které se objevují při zpracování zpráv přijatých přes již dříve navázaná SMTP připojení. Hodnota parametru #milter_default_action byla změněna z „tempfail“ na „shutdown“, což znamená uzavření spojení s klientem.
Zdroj: opennet.ru
