Назад | Перейти на главную страницу

exim4 продолжает повторять попытку сообщения, которое не удается после «закрытого соединения в ответ на отправку блока данных»

Позвольте мне начать с того, что я не ИТ-специалист, но меня прижали к этому в моем офисе.

Кто-то в моем офисе отправил вложение электронной почты размером 86 МБ кому-то на aol.com, а aol.com отклоняет письмо, вероятно, потому, что оно слишком велико. Когда я смотрю журналы, я вижу «закрытое соединение в ответ на отправку блока данных» каждые 10-20 минут, я полагаю, потому что exim4 пытается продолжить его повторную отправку. Это происходило в течение 3 дней и, как вы можете догадаться, использовало большую пропускную способность.

Почему exim4 не перестал отправлять это письмо после стольких неудачных попыток?

Какую опцию конфигурации мне нужно изменить, чтобы установить количество неудачных попыток для отказа от такого рода отказов?

Основная проблема заключается в том, что вы приняли сообщение для ретрансляции, а сервер-получатель не может принять его. Обычно сервер-получатель говорит: «Размер сообщения 550 слишком велик» или что-то в этом роде, и exim не будет пытаться снова, а развернется и попытается сообщить отправителю, что возникла проблема с его сообщением размером 86 МБ, отправив ему сообщение сообщение об отказе.

Здесь этого не происходит, существует нечеткая проблема с обработкой сообщения, вероятно, потому, что оно такое большое. Обычно принимающий сервер будет использовать протокол ESMTP, который позволяет отклонять сообщения выше определенного размера до того, как они фактически пройдут по сети, но серверы AOL, похоже, не поддерживают это, поэтому они пытаются принять его и по какой-то причине терпят неудачу, что сервер AOL администраторы могут понять или не понять.

Поскольку exim не знает, что делать с этой плохо определенной проблемой, он будет пытаться отправить сообщение в течение пяти дней (конфигурация по умолчанию). Перед этим у вас есть два варианта устранения неприятностей: используйте exim -Mg $messageid который отправит возврат отправителю, или exim -Mrm $messageid который просто удалит сообщение из вашей очереди. Я предпочитаю первый, за исключением того, что сообщение об ошибке выглядит как «отменено администратором», в то время как я бы предпочел «закрытое соединение в ответ на отправку блока данных» плюс, возможно, «тайм-аут по умолчанию, сокращенный администратором».

Чтобы это не повторилось, вам, вероятно, следует определить ограничение на размер на своем сервере, чтобы вы не принимали сообщения, размер которых настолько велик, что получатель может отказаться. Параметр называется message_size_limit и может уже присутствовать в вашей конфигурации. Используя очень полные возможности конфигурации exim, вы, вероятно, могли бы определить ограничение только для писем в AOL, если хотите. В общем случае обычно 10 или 20 МБ.

Сначала по данной ошибке. Поскольку этот тип отказа smtp к smtp может произойти из-за ряда проблем с сетевым подключением

  • брандмауэр выполняет фильтрацию пакетов
  • Любое другое устройство безопасности или
  • Антивирусная программа
  • Или какая-то другая политика настроенная на почтовом сервере

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

Чтобы этого не произошло, вам нужно изменить значение по умолчанию. retry-rules.

  1. Правило повтора по умолчанию

Раздел повторных попыток конфигурационного файла содержит правила, которые влияют на способ повторных попыток Exim доставки, которые не могут быть выполнены с первой попытки. Он вводится строкой

Правило повтора exim по умолчанию выглядит так:

начать повтор

В конфигурации по умолчанию есть только одно правило, которое применяется ко всем ошибкам:

    • F, 2ч, 15м; G, 16ч, 1ч, 1,5; П, 4д, 6ч

Это приводит к тому, что любой временно отказавший адрес будет повторяться каждые 15 минут в течение 2 часов, затем с интервалами, начиная с одного часа и увеличиваясь в 1,5 раза, пока не пройдут 16 часов, а затем каждые 6 часов до 4 дней. Если адрес не доставлен после 4 дней временного сбоя, он возвращается.

Если секция повтора удалена из конфигурации или пуста (то есть, если правила повтора не определены), exim не будет повторять доставку. Это превращает временные ошибки в постоянные.

Вы можете соответствующим образом отрегулировать значения. Вот официальная ссылка: http://www.exim.org/exim-html-current/doc/html/spec_html/ch-the_default_configuration_file.html#SECID57

Вот тоже очень хорошее объяснение.