Вместо того, чтобы давать нашим клиентам имя сервера вроде beta.example.com
в качестве серверов IMAP / SMTP мы хотели бы использовать smtp.example.com
.
У нас есть база данных всех доменов / почтовых серверов и соответствующих почтовых серверов. Есть ли способ использовать nginx (или другой сервер / службу) в качестве обратного прокси? Затем nginx должен перенаправить запрос на правильный сервер.
большое спасибо
Нет необходимости ставить nginx
или любой другой балансировщик нагрузки перед пограничными SMTP-серверами. Если вы не настроите правильную конфигурацию, это может повредить вашей способности успешно доставлять почту. Просто поместите свои серверы в DMZ.
Входящий трафик будет частью разговора, прежде чем вы сможете правильно его направить. Пользователи IMAP будут пытаться войти в систему. SMTP-серверы будут в RCPT TO
и может пытаться доставить одно и то же сообщение в разные домены, для которых вы указаны как MX.
Обычно используются такие имена, как smtp01.example.com
для ферм серверов. Для каждого из этих серверов. Домен, который вы используете для своего почтового сервера (ов), редко совпадает с именем сервера. Для общих служб, таких как SMTP, Web, IMAP, POP и другие, принято публиковать и использовать имена служб в дополнение (или вместо) имен узлов. Распределите нагрузку на ваши серверы MX, опубликовав их с одинаковым приоритетом.
A
запись в DNS для IP-адреса вашего почтового сервера. Также добавьте AAAA
запись для IPv6 IP почтового сервера. если вы хотите поддерживать IPv6. (Вам понадобятся две записи PTR, если вы настраиваете поддержку IPv4 и IPv6.)PTR
запись для возврата служебного (SMTP) имени сервера. Это позволит работать с проверкой обратного DNS (rDNS).HELO
или EHLO
команда.Рассмотрите возможность добавления записи SPF, например v=spf1 a -all
в записи DNS для каждого SMTP-сервера. Это позволит получателям проверить, предназначен ли этот сервер для отправки почты. (SPF можно использовать для проверки сервера, а также отправителя.)
Хотя серверы MX обычно также являются серверами исходящей почты, в этом нет необходимости. Перечислите исходящие SMTP-серверы в записи SPF для доменов, используемых в адресах электронной почты (обычно example.com
скорее, чем george.example.com
).
Ваши SMTP-серверы должны принадлежать к одному домену. Серверы MX для домена не обязательно должны находиться в одном домене. Если вы настраиваете несколько доменов, выберите один для почтовых серверов и используйте его для всех доменов.
В более крупных установках граничные (внешние) SMTP-серверы обычно перенаправляют на внутренние почтовые серверы для окончательной доставки входящей почты. Вся исходящая почта должна быть отправлена на пограничные серверы для доставки. Если вы отделили входящие серверы MX (почтовый обмен) от исходящих серверов MTA (Mail Transfer Agent), то исходящие сообщения следует отправлять через исходящие MTA, а не через серверы MX. Хорошая идея - включить MX
в записях SPF все равно. Это позволит вашим серверам MX отправлять уведомления об отложенной доставке, не считая сообщение спамом.
Для перемещающихся пользователей вам может потребоваться аутентифицированный доступ SMTP, чтобы пользователи могли отправлять электронную почту. Лучше всего это делать на порту отправки (587), а не на порту SMTP (25). Это должно быть защищено с помощью TLS (SSL) с помощью startTLS
команда после подключения. Аутентификация должна быть разрешена только для зашифрованных соединений. Это может быть предложено на серверах, настроенных выше, или на серверах, обеспечивающих доступ по протоколу IMAP.
В зависимости от ваших потребностей вы можете использовать IMAP-сервер, поддерживающий прокси-соединения, или просто разрешить пользователям подключаться к серверу для своего домена. Обычно для этой цели используется служебный домен, обычно imap.example.com
или mail.example.com
. Их можно настроить в DNS как A
записи или CNAMES
. Многие почтовые клиенты автоматически настраиваются правильно на общие учетные записи служб для домена. Если joe@example.com
вводится как пользователь во время настройки, программное обеспечение может найти служебные домены, такие как mail.example.com
, imap.example.com
, pop.example.com
и smtp.example.com.
Относительно часто используются разные имена служб для трафика IMAP и STMP.