Postfix кажется слишком агрессивным при отправке новостных рассылок
У меня проблема с отправкой информационных бюллетеней на определенные домены / серверы, такие как Yahoo или мелкие сетевые провайдеры. Как будто я спамил их серверы соединениями, и они говорят мне остановиться через некоторое время. Я получаю кучу электронных писем, но затем я сталкиваюсь с сообщениями, подобными приведенным ниже, в течение некоторого времени (около часа), пока соединение не будет открыто:
статус = отложенный (доставка временно приостановлена: потеря связи с mx-eu.mail.am0.yahoodns.net[188.125.69.79]
Я не заинтересован в рассылке спама на их серверах и пробовал разные параметры, чтобы настроить postfix под мои нужды. Что я пробовал до сих пор вкратце:
- Сокращение количества одновременных соединений во всем мире
- Вставка задержки в 1 секунду глобально
- Уменьшено количество процессов до 2
- Созданы конкретные политики для рассматриваемых доменов (источник: http://steam.io/2013/04/01/postfix-rate-limiting)
Кто-нибудь из вас имеет опыт в этом вопросе? И возможно ли будет создать политики для этих конкретных серверов получателей, например Yahoo?
Примеры конфигурации будут оценены.
1 ответ
Postfix не особенно агрессивен. Он пытается доставить почту в соответствии с SMTP и различными рекомендациями.
Это вина Yahoo.
У Yahoo крайне низкие ограничения на одновременное получение сообщений от одного отправителя. Я вижу, что это происходит с небольшим списком из 500 человек, в котором всего пара десятков адресов Yahoo.
Содержание этого конкретного списка чрезвычайно чувствительно ко времени; если сообщение не получено, не прочитано и не обработано в течение двух минут, оно теряет большую часть своего значения.
Мое "решение" состоит в том, чтобы предупредить пользователей Почты Yahoo, что Yahoo может задержать получение их почты и что они могут пожелать рассмотреть другого поставщика. Это может или не может работать для вас. Поскольку Postfix повторяет оставшихся получателей довольно быстро, это обычно не является серьезной проблемой.
Некоторые другие возможные решения:
VERP. Это делает каждое сообщение уникальным, а также обходит смехотворно низкие пределы Yahoo, но это замедляет доставку и резко увеличивает использование полосы пропускания, потому что тела сообщения должны повторно передаваться для каждого получателя. Возможно, вы захотите запустить тесты и определить, является ли разница во времени доставки приемлемой или нет. Для чего-то столь же чувствительного ко времени, как список, который я упомянул выше, VERP невозможен.
Изменить постфикс
smtp_destination_recipient_limit
установка. По умолчанию это 50, что означает, что Postfix будет пытаться доставить до 50 получателей за одно соединение с другим SMTP-сервером. Поскольку Yahoo, кажется, принимает только около 10 одновременно, изменение этого значения на 10 поможет. Однако это повлияет на доставку по всем адресатам, даже тем, которые не обязательно должны быть искусственно ограничены таким образом, и замедлит доставку всей почты. И так как 50, кажется, лучшая отраслевая практика, я все равно не буду рекомендовать это.
Наконец, конфигурация, указанная в статье, на которую вы ссылаетесь, выглядит хорошо. Возможно, вы что-то упустили при реализации или что Yahoo решила, что вы действительно не нравитесь.