Pēc gandrīz gada izstrādes tika publicēts jauns stabilas versijas izlaidums e-pasta serverim Postfix — 3.10.0. Tajā pašā laikā tika paziņots par atbalsta pārtraukšanu Postfix 3.6 versijai, kas tika izdota 2021. gada sākumā. Projekta kods ir uzrakstīts C valodā un tiek izplatīts saskaņā ar EPL 2.0 (Eclipse Public License) un IPL 1.0 (IBM Public License).
Postfix ir viens no retajiem projektiem, kas apvieno augstu drošību, uzticamību un veiktspēju, ko izdevies panākt, pateicoties vairāku procesu arhitektūrai, kas izolē atsevišķus apstrādātājus, kā arī stingrai koda noformēšanas un plāksteru auditēšanas politikai. Lai aizsargātu pret kļūdām, strādājot ar atmiņu, projektā tiek izmantotas aizsargātas funkciju versijas atmiņas piešķiršanai un atbrīvošanai, kā arī abstraktu funkciju apvalki, lai strādātu ar buferiem (pārbauda šķiršanās balstus un piekļuvi atbrīvotai atmiņai), failu operācijām, izvades formatēšanai, buferizētai ievadei / izejai un ar virkņu manipulēšanu (iekļaujot iespējas strādāt ar mainīgā izmēra virkņām un automātisku virkņu izmēru maiņu).
Saskaņā ar februāra automatizēto aptauju aptuveni 550 tūkstoši e-pasta serveriem, Postfix tiek izmantots 37.64% (pirms gada 36.81%) e-pasta serveru, Exim daļa ir 56.03% (pirms gada 56.61%), Sendmail — 3.39% (3.60%), MailEnable — 1.80% (1.82%), MDaemon — 0.39% (0.40%), Microsoft Exchange — 0.19% (0.19%), OpenSMTPD — 0.10% (0.09%).

Galvenās jauninājumi:
- Ir pievienota iespēja izmantot TLS kriptovalūtu, kas ir izturīgas pret kvantu datora uzbrukumiem. Lai izmantotu šos algoritmus, ir nepieciešama OpenSSL 3.5 bibliotēkas versija, kas pagaidām nav izlaista. Lai izvēlētos postkvantu algoritmus, Postfix neatjaunoja jaunu TLS grupu sintaksi, bet paļāvās uz OpenSSL iestatījumiem, kas tiks izmantoti, iestatot parametrus «tls_eecdh_auto_curves» un «tls_ffdhe_auto_groups» uz tukšām vērtībām.
- Ir pievienota atbalsts ziņu virsrakstam «TLS-Required: no» (RFC 8689), ja piegāde tiks veikta pat tad, ja nesanāk izpildīt iestatīto TLS drošības politiku. Ja šāds virsraksts ir klāt, SMTP klients darbojas režīmā «smtp_tls_security_level = may», t.i., netiek pārbaudīts sertifikāts. serveris un var atgriezties uz savienojumu ar nešifrētu datu pārsūtīšanu. Nākamajā nozīmīgajā Postfix versijā plānots ieviest SMTP paplašinājumu REQUIRETLS.
- Pievienota atbalsta TLS-RPT (Transport Layer Security Reporting) protokolam, kas ļauj izsekot piegādes kļūdām, kas rodas, ja neizdodas izveidot šifrētu savienojumu, ko nosaka DANE (DNS-based Authentication of Named Entities) vai MTA-STS (MTA Strict Transport Security) paplašinājumi. Pasta domēna īpašnieks DNS nosaka parametrus TLS-RPT, pēc tam pasta serveri nosūtīs ziņojumus par veiksmīgajiem un neveiksmīgajiem TLS savienojumiem uz MX serveriem, kas apkalpo šo domēnu. Realizācija balstās uz libtlsrpt bibliotēku.
- Ir pievienots iestatījums «smtpd_hide_client_session = yes», kas atspējo informācijas par klienta sesiju iegūšanu, kad SMTP serveris pievieno virsrakstu «Received:». Piemērs saīsinātā virsrakstā: «Received: by mail.example.com (Postfix) id postfix-queue-id for ; Day, dd Mon yyyy hh:mm:ss tz-offset (zone)».
- Ir pievienota iespēja MIME kodēšanai (RFC 2047) nosaukumiem, kas tiek ģenerēti Postfix virsrakstos «From:», kas satur ne-ASCII simbolus. Ieteiktā kodēšanas shēma ļauj apiet SMTPUTF8 (RFC 6531) paplašinājuma izmantošanu, ko neatbalsta visas lietojumprogrammas. Rezultāts MIME kodēšanai izskatās kā ‘»=?charset?Q?gibberish?=:’. Lai noteiktu sākotnējo nosaukumu kodējumu, ir pievienots parametrs «full_name_encoding_charset», pēc noklusējuma iestatīts uz utf8.
- Ir mainīta loģika neizdoto savienojumu apstrādei, norādot iestatījumos «mysql:» vai «pgsql:» tikai vienu serveri. Šāds serveris tagad tiek uztverts kā slodzes balansētājs, un vienas kļūmes gadījumā atkārtotais pieprasījums tiek nosūtīts tūlīt, bez 60 sekunžu aizkaves.
- Milterī ieviesta informācijas par ziņas ievietošanu karantīnā atspoguļošana žurnālā.
- SMTP server now logs the queue ID or "NOQUEUE" when a connection times out, drops, or exceeds the error limit. The cleanup process logs "queueid: canceled" for messages with an ongoing but incomplete transaction.
- In the Dovecot SASL client, when logging the message "Invalid authentication mechanism," the authentication mechanism that failed to use is now specified. The SMTP server logs 'reject' entries now display the values of sasl_method, sasl_username, and sasl_sender settings.
- Due to changes in the internal protocol used by the delivery agent, after updating the Postfix version, a restart is required via the command "postfix reload" or by using the commands "postfix stop" and "postfix start." Otherwise, a warning "unexpected attribute smtputf8 from xxx socket (expecting: sendopts)" will be logged.
Avots: opennet.lv
