Опубликован почтовый сервер Postfix 3.11.0

После года разработки опубликован релиз новой стабильной ветки почтового сервера Postfix — 3.12.0. В то же время объявлено о прекращении поддержки ветки Postfix 3.7, выпущенной в начале 2022 года. Код проекта написан на языке Си и распространяется под лицензиями EPL 2.0 (Eclipse Public license) и IPL 1.0 (IBM Public License).

Postfix является одним из редких проектов, сочетающих одновременно высокую безопасность, надёжность и производительность, чего удалось добиться благодаря многопроцессной архитектуре, изолирующей отдельные обработчики, а также жёсткой политике оформления кода и аудита патчей. Для защиты от ошибок при работе с памятью в проекте используются защищённые варианты функции для выделения и освобождения памяти, а также набор абстрактных функций-обвязок для работы с буферами (проверяется выход за границы буфера и обращения к освобождённой памяти), файловыми операциями, форматирования вывода, буферизированного ввода/вывода и манипуляций со строками (включая возможности для работы со строками произвольного размера и автоматического изменения размера строк).

В соответствии с финальным автоматизированным опросом около 500 тысяч почтовых серверов (после июля 2025 года публикация отчётов прекращена), Postfix используется на 37.88% (год назад 36.81%) почтовых серверов, доля Exim составляет 55.59% (год назад 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%).

Основные новшества:

  • Проведена работа по упрощению миграции с поисковых таблиц «hash:» и «btree:» на «lmdb:» или «cdb:» в связи с прекращением поставки библиотек BerkeleyDB в некоторых дистрибутивах Linux. Для сохранения совместимости с инструментарием Mailman, запускающим команду «postmap hash:/path/to/file» при добавлении или удалении списков рассылки, в Postfix добавлена поддержка автоматического перенаправления подобных команд на варианты с поддерживаемыми типами БД.

  • По умолчанию включено подключение к SMTP-серверам с использованием TLS-шифрования. В настройках SMTP-клиента параметр smtp_tls_security_level выставлен в значение «may», если Postfix собран с поддержкой TLS. Значение «may» включает по умолчанию использование TLS для серверов с поддержкой шифрования, но допускает откат на передачу данных открытым текстом, если сервер не поддерживает TLS.

  • В ESMTP реализована поддержка расширения «REQUIRETLS» (RFC 8689), позволяющего отправителю запросить гарантированное TLS-шифрование на всем пути доставки сообщения. В данном режиме любой SMTP и LMTP сервер, участвующий в перенаправлении письма, должен поддерживать REQUIRETLS и строгую аутентификацию через DANE или STS, а при передаче сообщения по цепочке другим серверам запрашивать использование REQUIRETLS.

  • Обеспечено отражение в логах уровня безопасности TLS, т.е. если для передачи сообщения затребован уровень REQUIRETLS, информация об использовании REQUIRETLS теперь будет сохранена в логе.

  • Добавлен параметр smtp_tls_enforce_sts_mx_patterns, включающий режим совместимости между SMTP-клиентом Postfix и плагинами MTA-STS (MTA Strict Transport Security), требующими включения поддержки TLSRPT для перенаправления атрибутов STS. При выставлении данного параметра, который активен по умолчанию, SMTP-клиент Postfix подключится к MX-серверу только если его имя соответствует шаблону, указанному в политиках STS. В противном случае будет использовано старое поведение — возможность соединения c MX-серверами на основании MX-записей в DNS при соответствии серверного сертификата политикам STS. Механизм MTA-STS позволяет информировать клиента, установившего соединение через незащищённый канал связи, о возможности и параметрах установки защищённого TLS-соединения. Поддержка параметра smtp_tls_enforce_sts_mx_patterns также добавлена в утилиты postfix-tlspol и postfix-mta-sts-resolver.

  • Добавлена поддержка алгоритмов шифрования, стойких к подбору на квантовом компьютере, при сборке с OpenSSL 3.5 и более новыми выпусками.

  • Переведены в разряд устаревших 16 параметров конфигурации, при использовании которых в лог теперь будет выводиться предупреждение об их удалении в одном из будущих выпусках. В число устаревших параметров, среди прочего, включены «virtual_maps», «fallback_relay», «postscreen_whitelist_interfaces» и «smtpd_client_connection_limit_exceptions».

  • Добавлена поддержка вывода данных в формате JSON для команд: «postconf -j|-jM|-jF|-jP», «postalias -jq|-js», «postmap -jq|-js» и «postmulti -jl».

  • Улучшена обработка ошибок в Milter-фильтрах (mail filter), возникающих при обработке сообщений, полученных через уже давно установленные SMTP-соединения. Значение параметра #milter_default_action изменено с «tempfail» на значение «shutdown», подразумевающее закрытие соединения с клиентом в случае, если от Milter не получен ответ.



Источник: http://www.opennet.ru/opennews/art.shtml? num=64928

OpenNet прочитано 1053 раза