dovecot/pigeonhole: sieve_redirect_envelope_from: orig_recipient приводит к почтовым бомбам

Вопрос или проблема

Мы недавно изменили sieve_redirect_envelope_from на orig_recipient, чтобы исправить перенаправления sieve в случае, если пересланное письмо приходит из домена с поддержкой DMARC.

Хотя это работает хорошо, это создает новую проблему: если почтовый сервер получателя (тот, кто отвечает за место назначения перенаправления) реагирует письмом с уведомлением о недоставке, это уведомление теперь будет отправлено на orig_recipient – адрес электронной почты, на котором установлено перенаправление. Это означает создание почтовой бомбы (бесконечная почтовая петля).

Смотрите следующий пример:

  1. [email protected] отправляет письмо на [email protected]
  2. [email protected] имеет перенаправление sieve на [email protected]
  3. [email protected] отвечает с уведомлением о недоставке, так как их почтовый ящик переполнен.
  4. Письмо с уведомлением отправляется на [email protected].
  5. Цикл начинается снова с шага 2.

Можно ли настроить dovecot/pigeonhole так, чтобы не перенаправлять уведомления о недоставке с шага 4 снова?

Вероятно, можно добавить ручные дополнительные проверки в правила перенаправления sieve, но это потребует соблюдения со стороны любого пользователя, который настраивает перенаправление. Поэтому я больше ищу изменение конфигурации на уровне сервера, которое решит эту проблему.

С нетерпением жду ваших мыслей по поводу этой проблемы.

Ответ или решение

Введение: Проблема, связанная с настройкой параметра sieve_redirect_envelope_from в Dovecot/Pigeonhole, возникла в результате изменения его значения на orig_recipient с целью исправления пересылки писем из доменов с включенной политикой DMARC. Однако такое изменение создает риск формирования почтовых "бомб" из-за образования цикла ответных писем при возникновении ошибок передачи. Ниже приведено подробное объяснение проблемы и возможные решения для её предотвращения.

Теория

DMARC и переадресация писем:

DMARC — это технология, которая позволяет владельцам доменов защищать свои адреса электронной почты от несанкционированного использования, например, от фишинга. При пересылке писем с адресов, защищённых DMARC, отправителем в заголовке From может указываться адрес, не принадлежащий серверу пересылки, что приводит к несоответствию DMARC. В связи с этим, пересылаемые письма часто блокируются или помечаются как спам.

Проблема цикла и почтовых "бомб":

Ключевая проблема при использовании orig_recipient заключается в том, что сообщения об ошибках, возникающих, например, при переполнении почтового ящика получателя, возвращаются по адресу, который задал переадресацию. Это создает потенциальный бесконечный цикл повторных попыток доставки.

Пример

Рассмотрим следующую последовательность:

  1. Пользователь [email protected] отправляет электронное сообщение на адрес [email protected].
  2. Почтовый ящик [email protected] настроен на пересылку писем на [email protected] с использованием sieve-сценария.
  3. Сервер, обслуживающий почтовый ящик [email protected], отвечает с Bounce-сообщением из-за переполненного ящика.
  4. Bounce-сообщение отправляется обратно на адрес [email protected].
  5. Цикл повторяется, начиная с шага 2.

Решение

  1. Использование "Sieve Filtering":

    Можно настроить правила фильтрации Sieve, исключающие обработку Bounce-сообщений. Это можно реализовать, определив условия для игнорирования сообщений с заголовками, характерными для Bounce-сообщений (например, Auto-Submitted, Return-Path).

  2. Обработка "List-Id" и других заголовков:

    Некоторые сервера говорят о своем автоматическом ответе при помощи встроенных заголовков Email. Эти сведения могут быть использованы при настройке фильтрации.

  3. Внедрение серверных политик:

    Необходимо установить серверные политики, которые позволят выполнять проверку отправленных писем перед их повторной пересылкой. Можно предусмотреть серверный скрипт, который бы проверял заголовки входящих писем и определял их как не отправляемые далее Bounce-письма.

  4. Дополнительные механизмы защиты:

    Также можно установить лимиты на количество пересылаемых автоматически писем в час или день для одного пользователя.

  5. Обновление Dovecot/Pigeonhole:

    Возможно, основной механизм по работе с DMARC и пересылкой имеет обновления или патчи, исправляющие рассматриваемую проблему. Рекомендуется постоянно актуализировать версию используемого программного обеспечения.

Заключение: Решение проблемы требует комплексного подхода, включающего корректировку правил Sieve-фильтрации, реализацию серверных политик и использование современных возможностей, предоставляемых Dovecot/Pigeonhole для управления пересылкой. Внедрение таких мер позволит минимизировать риск возникновения почтовых "бомб" и улучшить надежность и безопасность работы почтового сервера.

Оцените материал
Добавить комментарий

Капча загружается...