Издание на пощенския сървър Postfix 3.6.0

След година разработка беше пусната новата стабилна версия на пощенския сървър Postfix — 3.6.0. В същото време беше обявено за прекратяване на поддръжката на версията Postfix 3.2, издадена в началото на 2017 година. Postfix е един от малкото проекти, които съчетават висока сигурност, надеждност и производителност, постигнати благодарение на добре обмислената архитектура и достатъчно строга политика за оформяне на кода и одит на пачовете. Кодът на проекта се разпространява под лицензите EPL 2.0 (Eclipse Public license) и IPL 1.0 (IBM Public License).

В съответствие с априлското автоматизирано проучване, около 600 хиляди пощенски сървъри, Postfix се използва на 33.66% (преди година 34.29%) от пощенските сървъри, делът на Exim е 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%).

Основни нововъведения:

  • С оглед на промяната на вътрешните протоколи, използвани за взаимодействие между компонентите на Postfix, преди актуализация е необходимо да се спре пощенския сървър с команда «postfix stop». В противен случай могат да се наблюдават проблеми при взаимодействие с процесите pickup, qmgr, verify, tlsproxy и postscreen, което може да доведе до забавяне на изпращането на писма до перезапуск на Postfix.
  • Беше направена чистка на споменаванията на думите «white» и «black», възприемани от някои представители на общността като расова дискриминация. Вместо «whitelist» и «blacklist» сега трябва да се използват «allowlist» и «denylist» (например, параметрите postscreen_allowlist_interfaces, postscreen_denylist_action и postscreen_dnsbl_allowlist_threshold). Промените засягат документацията, настройките на процеса postscreen (вградената защитна стена) и отразяването на информацията в логовете. postfix/postscreen[pid]: ALLOWLIST VETO [address]:port postfix/postscreen[pid]: ALLOWLISTED [address]:port postfix/postscreen[pid]: DENYLISTED [address]:port

    За запазване на предишните термини в логовете е предвиден параметърът «respectful_logging = no», който трябва да бъде посочен в main.cf преди «compatibility_level = 3.6». Подкрепата за стари имена на настройки postscreen е запазена за осигуряване на обратно съвместимост. Освен това, файловете с конфигурация «master.cf» все още остават непроменени.

  • В режим «compatibility_level = 3.6» е извършено прехвърляне по подразбиране към използването на хеш-функция SHA256 вместо MD5. При задаване на по-ранна версия в параметъра compatibility_level продължава да се прилага MD5, но за свързаните с използването на хешове настройки, в които алгоритъмът не е изрично определен, в логовете ще се изведе предупреждение. Поддръжката на експортиран вариант на протокола за обмен на ключове Диффи-Хелман е прекратена (стойността на параметъра tlsproxy_tls_dh512_param_file сега се игнорира).
  • Определянето на проблеми, свързани с указването на неправилна програма-обработчик в master.cf, е опростено. За откриване на подобни грешки всеки вътрешен сервиз, включително postdrop, сега обявява името на протокола преди началото на обмена на данни, а всеки клиентски процес, включително sendmail, проверява съответствието на обявеното име на протокола с поддържаната версия.
  • Добавен е нов тип сопоставления «local_login_sender_maps» за гъвкаво управление на разпределението на envelope-адреса на изпращача (предоставя се в командата «MAIL FROM» по време на SMTP-сесия) в процесите sendmail и postdrop. Например, за разрешаване на локални потребители, с изключение на root и postfix, да указват само своите логини в sendmail, използвайки свързването на UID с името, могат да се използват следните настройки: /etc/postfix/main.cf: local_login_sender_maps = inline:{ { root = *}, { postfix = * } }, pcre:/etc/postfix/login_senders /etc/postfix/login_senders: # Позволява се указване както на логини, така и на форма логин@домен. /(.+)/ $1 $1…@example.com
  • Добавена е и по подразбиране активирана настройка «smtpd_relay_before_recipient_restrictions=yes», при която SMTP-серверът ще проверява ограниченията smtpd_relay_restrictions преди smtpd_recipient_restrictions, а не обратното, както преди.
  • Добавен е параметър «smtpd_sasl_mechanism_list», по подразбиране зададен на «!external, static:rest», за предотвратяване на объркващи грешки, когато backend SASL обявява поддръжка на режима «EXTERNAL», който не се поддържа в Postfix.
  • При определяне на имената в DNS по подразбиране е активиран нов API, който поддържа многопоточност (threadsafe). За сборка със стария API трябва да се укаже при сборка «make makefiles CCARGS=»-DNO_RES_NCALLS…».
  • Добавен е режимът «enable_threaded_bounces = yes» за подмяна на уведомления за проблеми с доставката, закъснения или потвърждение на доставка с един и същ идентификатор на дискусията (уведомлението ще се показва в пощенския клиент в същата нишка, заедно с останалите съобщения в кореспонденцията).
  • По подразбиране се спира използването на системната БД /etc/services за определяне на номера на TCP портовете за SMTP и LMTP. Вместо това, номерата на портовете се конфигурират чрез параметъра known_tcp_ports (по подразбиране lmtp=24, smtp=25, smtps=submissions=465, submission=587). В случай, че някаква услуга е пропусната в known_tcp_ports, продължава да се използва /etc/services.
  • Нивото на съвместимост («compatibility_level») е повишено до стойност «3.6» (в миналото параметърът е променян два пъти, освен 3.6, се поддържат стойности 0 (по подразбиране), 1 и 2). Оттук нататък, «compatibility_level» ще се променя на номера на версията, в която са направени изменения, нарушаващи съвместимостта. За проверка на нивата на съвместимост в main.cf и master.cf са добавени отделни оператори за сравнение, като «<=level» и «< level» (стандартните оператори за сравнение не са приложими, тъй като биха счетели 3.10 за по-малко от 3.9).

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster