У нас есть несколько приложений, которые в настоящее время сообщают SMTP с внешним MTA. Электронные письма имеют произвольные целевые домены (это электронные письма, которые будут отправлены нашим пользователям), но все из одного внутреннего домена (support@company.com).
Я хочу настроить внутренний MTA (я полагаю, с помощью sendmail), который ставит в очередь все письма, и чтобы внутренний MTA пересылал эти письма внешнему MTA, потому что внешний MTA иногда выходит из строя, и это вызывает различные проблемы в наших приложениях. Я полагаю, что могу настроить sendmail в качестве промежуточного программного обеспечения для очередей.
Если приведенные выше предположения верны, как будет выглядеть конфигурация sendmail? Функция «mailertable» выглядит многообещающей, как и «SMART_HOST».
Есть какие-нибудь мысли, прежде чем я исследую эти возможности?
SMART_HOST действительно правильный вариант, но также нулевой клиент является. Примеры:
FEATURE(`nullclient',`mta.external.com') dnl
define(`SMART_HOST',`mta.external.com') dnl
Основное отличие состоит в том, что nullclient, в отличие от SMART_HOST, также пересылает сообщения для локальных пользователей на удаленный хост. SMART_HOST пересылает на удаленный хост только сообщения для нелокальных пользователей. Также следующие параметры могут оказаться полезными в ситуации, аналогичной описанной в вопросе: LOCAL_RELAY, MAIL_HUB, LUSER_RELAY
Я нашел здесь прекрасное объяснение этих вариантов: http://docstore.mik.ua/orelly/other/Sendmail_3rd/1565928393_sendmail3-chp-4-sect-5.html
Также смотрите этот пост sendmail перенаправляет локальную почту на узел ретрансляции
Я знаю, что вопрос старый, но кажется подходящим для публикации информации. Мне потребовалось время, чтобы собрать все воедино.
Такая конфигурация (ретрансляция всей почты одному другому MTA) называется конфигурацией «нулевого клиента». Доступны некоторые руководства:
Все, что вам нужно для sendmail:
FEATURE(`nullclient', `mailhub.domain.notused')dnl
Некоторые дистрибутивы (openSuSE) предоставляют для этой цели отдельный файл конфигурации nullclient.mc.
Параметр SMART_HOST - это именно то, что вам нужно. Точные детали конфигурации будут зависеть от вашей версии sendmail, но это довольно просто. Вы укажете имя внешнего MTA в качестве интеллектуального хоста при его настройке. (Убедитесь, что машина, которую вы настраиваете, также может разрешить имя интеллектуального хоста.)
Я избегал sendmail и выбрал «минимальный сервер ретрансляции» под названием nullmailer.
Я писал об этом здесь и это хорошо работает для моего сценария - ваш пробег может отличаться ;-)
Изменить: Спасибо @tanius за подталкивание, чтобы исправить эту ссылку ;-)
Вопрос очень похож на те, которые задавали раньше.
Рассмотрим вариант использования SSMTP вместо моего ответь здесь.
Избавьтесь от сложности и проблем безопасности использования Sendmail для такой простой задачи.
Для postfix, который я предпочитаю почтовому программному обеспечению, параметры конфигурации - relayhost.