Как разместить несколько почтовых серверов на одном IP-адресе? [закрыто]

В моей локальной сети установлено несколько почтовых серверов. Например, у меня есть две машины, на которых

  • машина A обрабатывает почту для domainA.com и первую букву имени пользователя (скрытую) на IP 192.168.1.100,
  • машина B обрабатывает почту для (скрытой) на IP 192.168.1.101
  • машина C обрабатывает domainC.com на IP 192.168.1.110.

Я настроил входы MX для обоих доменов как mail.myMailHandlerDomain.Com, отображенные на моем общедоступном IP-адресе.

Итак, теперь у меня есть ограничение на переадресацию портов на одну машину. Я могу перенести только 25 465, 587, 993, 995 либо на машину A, либо на машину B, либо на машину C.

Я запускаю сервер Ubuntu с установкой postfix / dovecot. Из-за моего ограниченного опыта в этой области я ищу решения, но не могу понять различные концепции почтового ретранслятора и обратного прокси-сервера Nginx. Я ищу решение, подходящее для моей проблемы. Спасибо !!

Обновление 1

Машина C в этом сценарии фактически является резервным почтовым сервером для удаленного почтового сервера.

  • Что срабатывает всякий раз, когда основной почтовый сервер выходит из строя.
  • У меня есть сценарий обновления имени домена для изменения записей MX всякий раз, когда моя машина-наблюдатель обнаруживает сбой узла, поэтому мой текущий IP-адрес начнет получать почту для domainC.com.
  • Но ограничение для моей текущей сети состоит в том, что я не хочу тратить деньги на дополнительные IP-адреса, поэтому у меня один IP-адрес.

И я разделяю почту для domainA.com для балансировки нагрузки.

-5
задан 19 March 2017 в 02:30
3 ответа

Постфикс может читать конфигурации из базы данных... включая домены для обслуживания, как их обслуживать и адреса на этих доменах.

Хотя это не идеальное начало - https://workaround.org/ispmail/jessie

Настройте машину, которая будет получать всю почту изначально - это та, на которую вы будете пересылать почту с вашего брандмауэра, а это та, которую ваши внутренние ребята должны использовать в качестве исходящей почты. На этой машине настройте всех пользователей как простые псевдонимы/пересылки, пересылая почту на другие машины, используя в качестве адреса электронной почты user@machine.example.com. Каждая из этих машин также может быть настроена на использование mysql, хотя они будут обслуживать только один домен и т.д.

.
0
ответ дан 5 December 2019 в 22:18

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

  • Для входящей почты (MX) просто использовать один входной сервер и перенаправлять почту другим, если это необходимо. Или любой из 3-х серверов может forvard не владеть сообщениями на соответствующий сервер, для LB. (Например, с помощью postfix: использование mydestination, relay_recipient_maps, relay_domains, local_recipient_maps и/или virtual_mailbox_maps. Возможно, список полезных параметров не полный. http://postfix.cs.utah.edu/STANDARD_CONFIGURATION_README.html)

  • С соединениями от внешних пользователей (POP3/IMAP). Я думаю, что некоторые POP3/IMAP прокси nedeed, которые маршрутизируют соединения пользователей на основе логина. (Например, как описано http://wiki1.dovecot.org/HowTo/ImapProxy.)

1
ответ дан 5 December 2019 в 22:18

Я бы разместил оба почтовых сервера таким образом, чтобы обеспечить вам полную поддержку двойного стека на обоих серверах и без NAT. Это означает, что вам необходимо получить еще два IPv4-адреса от вашего хостинг-провайдера, а также, возможно, маршрутизированный префикс /64 IPv6. Если хостинг-провайдер не может этого обеспечить, я бы перешел к другому хостинг-провайдеру.

Если вы настаиваете на хостинге двух mx с одним IPv4 адресом, я все равно могу придумать способ, как заставить это работать, если у вас есть развертывание двойного стека. Каждый mx будет иметь маршрутизируемый IPv6 адрес, по которому они могут получать электронную почту. Ни один из них не будет получать электронную почту непосредственно с помощью IPv4. Вместо этого я бы настроил третий mx, который является вторичным для обоих доменов и может принимать электронную почту с IPv4 и IPv6.

Пока у отправителя есть IPv6, электронная почта обычно переходит непосредственно к финальному mx. Если у отправителя есть только письма с поддержкой IPv4, то сначала нужно перейти на вторичный mx, который затем пересылает письмо на конечный mx.

Вот пример того, как могут выглядеть DNS-записи для такой установки:

example.com.      3600  IN  MX    10 mx1.example.com.
example.com.      3600  IN  MX    20 mx2.example.com.
mx1.example.com.  3600  IN  AAAA  2001:db8:1::4
mx2.example.com.  3600  IN  AAAA  2001:db8::2
mx2.example.com.  3600  IN  A     192.0.2.1

example.org.      3600  IN  MX    10 mx1.example.org.
example.org.      3600  IN  MX    20 mx2.example.org.
mx1.example.org.  3600  IN  AAAA  2001:db8:1::5
mx2.example.org.  3600  IN  AAAA  2001:db8::2
mx2.example.org.  3600  IN  A     192.0.2.1

Обратите внимание, что единственное различие между IP-адресами для двух доменов - это AAAA-запись для mx1. Несмотря на то, что mx2.example.com. и mx2.example.org. - это два разных имени, оба они разрешаются на один и тот же хост, и единственным назначением mx на этом хосте является пересылка писем на mx1 для соответствующего домена.

0
ответ дан 5 December 2019 в 22:18

Теги

Похожие вопросы