Nakon godinu dana razvoja, objavljena je nova stabilna grana Postfix mail servera, verzija 3.12.0. Istovremeno, podrška za Postfix 3.7, objavljen početkom 2022. godine, je ukinuta. Kod projekta je napisan u C-u i distribuira se pod EPL 2.0 (Eclipse Public License) i IPL 1.0 (IBM Public License).
Postfix je jedan od rijetkih projekata koji kombinuje visoku sigurnost, pouzdanost i performanse, postignute kroz višeprocesnu arhitekturu koja izoluje pojedinačne rukovaoce, kao i strogu strukturu koda i politiku revizije zakrpa. Da bi se zaštitio od grešaka u memoriji, projekat koristi zaštićene verzije funkcija alokacije i dealokacije memorije, kao i skup apstraktnih omotačkih funkcija za upravljanje baferom (provjera prekoračenja bafera i pristup oslobođenoj memoriji), operacije sa datotekama, formatiranje izlaza, baferovani I/O i manipulaciju stringovima (uključujući mogućnosti rada sa stringovima proizvoljne veličine i automatsku promjenu veličine stringova).
Prema konačnom automatizovanom istraživanju provedenom na oko 500 hiljada poštanskih serveri (objavljivanje izvještaja bit će prekinuto nakon jula 2025.), Postfix se koristi na 37.88% (36.81% prije godinu dana) mail servera, Eximov udio je 55.59% (56.61% prije godinu dana), 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%).
Glavne inovacije:
- Проведена работа по упрощению миграции с поисковых таблиц «hash:» и «btree:» на «lmdb:» или «cdb:» в связи с прекращением поставки в некоторых дистрибутивах Linux библиотек BerkeleyDB. Для сохранения совместимости с инструментарием Mailman, запускающим команду «postmap hash:/path/to/file» при добавлении или удалении списков рассылки, в Postfix добавлена поддержка автоматического перенаправления подобных команд на варианты с поддерживаемыми типам БД.
- Podrazumevano, veze sa SMTP serverima koje koriste TLS enkripciju su omogućene. U postavkama SMTP klijenta, parametar smtp_tls_security_level je postavljen na "may" ako je Postfix izgrađen sa TLS podrškom. Vrijednost "may" omogućava TLS za servere koji podržavaju enkripciju, ali dozvoljava povratak na prijenos podataka u čistom tekstu ako server ne podržava TLS.
- ESMTP podržava ekstenziju "REQUIRETLS" (RFC 8689), koja omogućava pošiljaocu da zatraži zagarantovanu TLS enkripciju tokom cijelog puta isporuke poruke. U ovom režimu, svaki SMTP ili LMTP server koji učestvuje u prosljeđivanju poruke mora podržavati REQUIRETLS i snažnu autentifikaciju putem DANE ili STS. Prilikom prosljeđivanja poruke duž lanca drugim serverima, mora se koristiti i REQUIRETLS.
- Nivo sigurnosti TLS-a sada se odražava u zapisnicima, što znači da ako je za slanje poruke potreban nivo REQUIRETLS, informacije o korištenju REQUIRETLS-a sada će biti sačuvane u zapisniku.
- Dodan je parametar smtp_tls_enforce_sts_mx_patterns. Ovaj parametar omogućava kompatibilnost između Postfix SMTP klijenta i MTA-STS (MTA Strict Transport Security) dodataka koji zahtijevaju TLSRPT podršku za preusmjeravanje STS atributa. Kada je ovaj parametar omogućen prema zadanim postavkama, Postfix SMTP klijent će se povezati na MX server samo ako se njegovo ime podudara sa uzorkom navedenim u STS pravilima. U suprotnom, koristit će se naslijeđeno ponašanje - povezivanje na MX servere na osnovu DNS MX zapisa ako je certifikat servera u skladu sa STS pravilima. MTA-STS mehanizam omogućava obavještavanje klijenta koji se povezuje preko nesigurnog kanala o mogućnosti i parametrima za uspostavljanje sigurne TLS veze. Podrška za ovaj parametar je također dodana uslužnim programima postfix-tlspol i postfix-mta-sts-resolver.
- Dodata je podrška za algoritme kvantno otporne enkripcije prilikom izgradnje s OpenSSL 3.5 i novijim izdanjima.
- Šesnaest konfiguracijskih parametara je zastarjelo, a kada se koriste, u zapisniku će se prikazati upozorenje koje ukazuje na njihovo uklanjanje u budućem izdanju. Ovi zastarjeli parametri uključuju "virtual_maps", "fallback_relay", "postscreen_whitelist_interfaces" i "smtpd_client_connection_limit_exceptions".
- Dodata je podrška za ispis podataka u JSON formatu za naredbe: "postconf -j|-jM|-jF|-jP", "postalias -jq|-js", "postmap -jq|-js" i "postmulti -jl".
- Poboljšano rukovanje greškama u Milter filterima koje se javljaju prilikom obrade poruka primljenih putem dugo uspostavljenih SMTP veza. Parametar #milter_default_action je promijenjen iz "tempfail" u "shutdown", što znači zatvaranje veze s klijentom.
izvor: opennet.ru
