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

Постфикс unverified_recipient_tempfail_action = разрешение

В man-страница postfix говорит вы можете указать действие для unverified_recipient_tempfail_action. Но я не могу указать permit:

fatal: bad configuration: unverified_recipient_tempfail_action = permit

Итак, мои единственные варианты - отклонить, отложить или defer_if_permit?

Я использую проверку адреса получателя для своего резервного MX-сервера, который не должен откладывать входящую почту (потому что, если я хочу, чтобы входящие письма откладывались в случае отказа основного, у меня вообще не было бы резервного MX, чтобы сообщения были отложено на входящем SMTP-сервере).

Но теперь, когда срок действия verify-cache истек или в кеше еще нет записи для рассматриваемого пользователя, он отложит запрос, нарушив назначение резервного MX-сервера.

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

Обновить:

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

Но я также хочу использовать этот сервер входящей почты в качестве резервного MX для определенных доменов (используя relay транспорт, чтобы избежать петель доставки). Думаю, для этих доменов мне не нужен reject_unverified_recipient. Достаточно ли вставить permit_mx_backup в smtpd_recipient_restrictions (перед reject_unverified_recipient)?

С другой стороны, я все еще думаю, что имеет смысл использовать проверку адреса получателя в периоды, когда основной хост не отключен: это позволяет избежать обратного рассылки почты (почта возвращается (поддельным) отправителям из-за спама, отправленного несуществующим пользователям).

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

Установка unverified_recipient_tempfail_action на «разрешение» будет функционально идентична невыполнению проверки непроверенного получателя в первую очередь, поэтому вам просто нужно удалить reject_unverified_recipient из своего smtpd_recipient_restrictions.

Один из вариантов - прекратить использование проверки адреса для резервного MX и вместо этого заполнить ваши «relay_domains» и «relay_recipient_maps», чтобы ваш резервный MX имел полный список всех действительных адресов на вашем основном сервере. По сути, проверка адреса пытается сделать это за вас динамически, а обратной стороной является именно то обстоятельство, которое вы описываете. Он не может знать того, чего не знает, поэтому откладывает почту. Полные relay_recipient_maps устраняют эту необходимость и обеспечивают функциональность, которую вы ищете.

Резервные MX-серверы настолько сильно злоупотребляют и вызывают такие головные боли, что я выбрал решение, внешнее по отношению к postfix - в частности, я написал облегченные демоны, которые сидят на моем вторичном MX и активно контролируют первичный MX-сервер - если он может разговаривать с первичный MX, затем он проверяет, что порт 25 заблокирован на брандмауэре хоста (таким образом, «выключая» вторичный), и открывает этот порт только в том случае, если обнаруживает, что первичный недоступен. Я также гарантирую, что на них есть настройка relay_recipient_maps, чтобы они были полностью функциональными, когда им действительно нужно включиться.