При обслуживании нагруженного SMTP сервера, можно заметить, что часть сообщений застряет в очереди. Причины могут быть самые разные, это и 450 ответы удаленного сервера, не возможность соединится с удаленным сервером и обрывы при передаче сообщения. Как правило сервер повторяет отправку из очереди приблизительно раз в 30 минут. Но по мере роста количества таких сообщений, общая скорость отправки, даже на “быстрые” удаленные сервера падает.
Так может продолжаться очень долго, но при высокой интенсивности работы почты очередь “замусоривается” и это может по итогу привести к тому что, почтовый сервер фактически перестанет отправлять сообщения вовне.
Одним из вариантов решения этой проблемы является создание fallback relay – почтового сервера отстойника для медленной почты.
Особой настройки ему не требуется, достаточно разрешить ему пересылку почты от вашего SMTP сервера.
А на вашем SMTP сервере указать опцию, которая отвечает за fallback relay.
Рассмотрим настройки для различных серверов.
Для Sendmail это делается так, в /etc/mail/”хостнейм вашего сервера”.mc, нужно указать такую строку:
define(`confFALLBACK_MX', `адрес_fallback_сервера')
сохранить файл и в /etc/mail выполнить последовательно команды:
make make install make restart
Для постфикс 2.X все значительно проще, необходимо в /usr/local/etc/postfix/main.cf указать:
fallback_relay=адрес_fallback_сервера
для postfix 2.3 имя опции несколько изменилось:
smtp_fallback_relay=адрес_fallback_сервера
Сохранить файл и перегрузить постфикс:
postfix reload
У exim эта опция прописывает непосредственно в smtp транспорте, то есть нужно найти такие строки в /usr/local/etc/exim/configure:
remote_smtp: driver = smtp
И дописать строчку определяющую smtp fallback сервер:
remote_smtp: driver = smtp fallback_hosts = адрес_fallback_сервера
и перезапустить exim:
/usr/local/etc/rc.d/exim restart
На этом настройка окончена.
Постовой
В связи с ожиданием пополнения в моей семье начал изучать рынок детских товаров. Элитная детская мебель особенно впечатлила, начал копить денежку.