Релиз почтового сервера Exim 4.94
Состоялся релиз почтового сервера Exim 4.94, в который внесены накопившиеся исправления и добавлены новые возможности. В соответствии с майским автоматизированным опросом около миллиона почтовых серверов, доля Exim составляет 57.59% (год назад 53.03%), Postfix используется на 34.70% (34.51%) почтовых серверов, Sendmail — 3.75% (4.05%), Microsoft Exchange — 0.42% (0.57%).
Изменения в новом выпуске могут привести к нарушению обратной совместимости. В частности, некоторые виды транспорта перестали работать с неочищенными данными (tainted, значения на основе данных, полученных от отправителя) при определении местоположения доставки.
Например, проблемы могут возникнуть при использовании переменной $local_part в настройке «check_local_user» при маршрутизации письма. Вместо $local_part следует использовать новую очищенную переменную «$local_part_data». Кроме того, в операндах опции headers_remove теперь разрешено использование масок, определяемых при помощи символа «*», что может привести к нарушению работы конфигураций, в которых выполнялось удаление заголовков, заканчивающихся на символ звёздочки (вместо удаления конкретных заголовков будет выполнено удаление по маске).
Основные изменения:
- В дополнение к уже давно реализованной экспериментальной поддержки механизма SRS (Sender Rewriting Scheme) на основе libsrs_alt, добавлен алтернативный механизм EXPERIMENTAL_SRS_NATIVE без внешних зависимостей. SRS позволяет переписать адрес отправителя при пересылке без нарушения проверок SPF (Sender Policy Framework) и обеспечив сохранение данных об отправителе для направления сервером сообщений в случае ошибки доставки. Суть метода в том, что при установке соединения передаются сведения об идентичности с изначальным отправителем, например при перезаписи alice@example.org на alice@example.com будет указано «SRS0=HHH=TT=example.org=alice@example.com». SRS актуален, например, при организации работы списков рассылки, в которых исходное сообщение перенаправляется другим получателям.
- При использовании OpenSSL добавлена поддержка закрепления канала для аутентификаторов (ранее поддерживалось только для GnuTLS).
Добавлено событие «msg:defer». - Реализована поддержка аутентификатора gsasl на стороне клиента, которая протестирована только с обработчиком открытых паролей (plaintext). Работа методов SCRAM-SHA-256 и SCRAM-SHA-256-PLUS возможна только через сам gsasl.
- Реализована поддержка аутентификатора gsasl на стороне сервера для шифрованных паролей, выступающая альтернативой ранее доступного режима plaintext.
- Определения в именованных списках теперь могут помечаться префиксом «hide» для подавления вывода контента при выполнении команды «-bP».
- В драйвер аутентификации через IMAP-сервер Dovecot добавлена экспериментальная поддержка интернет-сокетов (ранее поддерживались только unix-domain сокеты).
- ACL выражение «queue_only» теперь может указываться как «queue» и поддерживает опцию «first_pass_route», аналогичную опции командной строки «-odqs».
- Добавлены новые переменные $queue_size и $local_part_{pre,suf}fix_v.
- В основной блок конфигурации добавлена опция «sqlite_dbfile» для использования при определении префикса строки поиска. Изменение нарушает обратную совместимость — старый метод задания префикса перестал работать при указании неочищенных (tainted) переменных в lookup-запросах. Новый метод («sqlite_dbfile») позволяет держать имя файла отдельно.
- В lookup-блоки dsearch добавлены опции для возвращения полного пути и фильтрации типов файлов при сопоставлении.
- В lookup-блоки pgsql и mysql добавлены опции для задания имени сервера отдельно от строки поиска.
- Для lookup-блоков, осуществляющих выборку по одному ключу, добавлена опция для возвращения очищенной (de-tainted) версии ключа при наличии совпадений, вместо искомых данных.
- Для всех успешных выборок list-match обеспечено выставление переменных $domain_data и $localpart_data (ранее вставлялись элементы списка, задействованные в выборке). Кроме того, применяемые при сопоставлении элементы списка теперь присваиваются переменным $0, $1 и т.д.
- Добавлен оператор раскрытия «${listquote {<char>} {<item>}}».
В оператор раскрытия ${readsocket {}{}{}} добавлена опция для обеспечения кэширования результатов. - Добавлена настройка dkim_verify_min_keysizes для перечисления минимально допустимых размеров открытых ключей.
- Обеспечено раскрытие параметров «bounce_message_file» и «warn_message_file» до их первого использования.
- Добавлена опция «spf_smtp_comment_template» для настройки значения переменной «$spf_smtp_comment».
Больше решений по теме импортозамещение ПО на портале https://www.n-kraft.ru/rsw