Uvolnění mailového serveru Postfix 3.6.0

Po roce vývoje došlo k uvolnění nové stabilní verze mailového serveru Postfix — 3.6.0. Zároveň bylo oznámeno o ukončení podpory verze Postfix 3.2, vydané na začátku roku 2017. Postfix je jedním z mála projektů, které kombinují vysokou bezpečnost, spolehlivost a výkonnost, čehož bylo dosaženo díky promyšlené architektuře a dostatečně přísné politice psaní kódu a auditu záplat. Kód projektu je distribuován pod licencemi EPL 2.0 (Eclipse Public License) a IPL 1.0 (IBM Public License).

Podle dubnového automatizovaného průzkumu přibližně 600 tisíc mailových serveryserverů je Postfix používán na 33.66% (před rokem 34.29%), podíl Eximu činí 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%).

Hlavní novinky:

  • V souvislosti se změnou interních protokolů, které se používají pro komunikaci mezi komponentami Postfixu, je před aktualizací nutné zastavit mailový serveru server pomocí příkazu «postfix stop». Jinak mohou nastat problémy při komunikaci s procesy pickup, qmgr, verify, tlsproxy a postscreen, což může vést k zpoždění v odesílání zpráv až do restartu Postfixu.
  • Bylo provedeno odstranění zmínek o slovech «white» a «black», které jsou některými členy komunity vnímány jako rasová diskriminace. Místo «whitelist» a «blacklist» by nyní mělo být používáno «allowlist» a «denylist» (například parametry postscreen_allowlist_interfaces, postscreen_denylist_action a postscreen_dnsbl_allowlist_threshold). Změny se týkají dokumentace, nastavení procesu postscreen (vestavěný firewall) a protokolování informací. postfix/postscreen[pid]: ALLOWLIST VETO [adresa]:port postfix/postscreen[pid]: ALLOWLISTED [adresa]:port postfix/postscreen[pid]: DENYLISTED [adresa]:port

    Pro zachování předchozích termínů v protokolech je k dispozici parametr «respectful_logging = no», který by měl být uveden v main.cf před «compatibility_level = 3.6». Podpora starých názvů nastavení postscreen byla zachována pro zajištění zpětné kompatibility. Také zatím zůstává nezměněn konfigurační soubor «master.cf».

  • V režimu „compatibility_level = 3.6“ byl standardně přechod na používání hashovací funkce SHA256 místo MD5. Při nastavení starší verze v parametru compatibility_level se nadále používá MD5, ale pro nastavení související s použitím hashů, kde není algoritmus výslovně určen, se do logu bude vypisovat varování. Byla ukončena podpora exportní verze protokolu výměny klíčů Diffie-Hellman (hodnota parametru tlsproxy_tls_dh512_param_file je nyní ignorována).
  • Byla zjednodušena diagnostika problémů spojených s uvedením nekorektního programu zpracovatele v souboru master.cf. Pro odhalení takových chyb nyní každý interní služba, včetně postdrop, oznamuje název protokolu před zahájením výměny dat, a každý klientský proces, včetně sendmail, kontroluje shodu deklarovaného názvu protokolu se podporovanou variantou.
  • Byl přidán nový typ mapování „local_login_sender_maps“ pro flexibilní řízení určení envelope adresy odesílatele (předává se v příkazu „MAIL FROM“ během SMTP relace) do procesů sendmail a postdrop. Například pro povolení místním uživatelům, kromě root a postfix, uvádět v sendmail pouze své přihlašovací údaje, použitím vazby UID na jméno, lze použít následující nastavení: /etc/postfix/main.cf: local_login_sender_maps = inline:{ { root = *}, { postfix = * } }, pcre:/etc/postfix/login_senders /etc/postfix/login_senders: # Uvádění je povoleno jak přihlašovacích údajů, tak forem login@doména. /(.+)/ $1 $1…@example.com
  • Bylo přidáno a standardně aktivováno nastavení „smtpd_relay_before_recipient_restrictions=yes“, při kterém SMTP server zkontroluje omezení smtpd_relay_restrictions před smtpd_recipient_restrictions, a ne naopak, jak tomu bylo dříve.
  • Byl přidán parametr „smtpd_sasl_mechanism_list“, standardně nastavený na hodnotu „!external, static:rest“ pro prevenci matoucích chyb, pokud backend SASL uvádí podporu režimu „EXTERNAL“, který není podporován v Postfixu.
  • Při určování názvů v DNS byl standardně zapojen nový API, který podporuje vícerozměrnost (threadsafe). Pro sestavení se starým API je třeba při sestavení uvést „make makefiles CCARGS=“-DNO_RES_NCALLS…“.
  • Byl přidán režim „enable_threaded_bounces = yes“ pro zobrazení upozornění na problémy s doručením, zpožděné doručení nebo potvrzení doručení se stejným identifikátorem diskuze (upozornění bude zobrazeno e-mailovým klientem ve stejné větvi spolu s ostatními zprávami konverzace).
  • Ve výchozím nastavení byla zastavena konfigurace systémové databáze /etc/services pro určení čísel TCP portů pro SMTP a LMTP. Místo toho se čísla portů nastavují pomocí parametru known_tcp_ports (ve výchozím nastavení lmtp=24, smtp=25, smtps=submissions=465, submission=587). Pokud nějaká služba chybí v known_tcp_ports, stále se používá /etc/services.
  • Úroveň kompatibility („compatibility_level“) byla zvýšena na hodnotu „3.6“ (dříve byla tato hodnota změněna dvakrát, kromě 3.6 jsou podporovány hodnoty 0 (výchozí), 1 a 2). Od nynějška se „compatibility_level“ změní na číslo verze, ve které došlo k změnám narušujícím kompatibilitu. Pro kontrolu úrovní kompatibility v main.cf a master.cf byly přidány samostatné porovnávací operátory, jako „<=level“ a „< level“ (standardní porovnávací operátory nejsou vhodné, protože by spočítaly 3.10 jako menší než 3.9).

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster