The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Nginx SMTP-прокси и виртуальные домены"
Отправлено nops, 20-Мрт-19 09:20 
Доброго дня коллеги.
Задался вопросом. Есть у меня в локалке почтовик. Работает чудно, на роутере проброшены порты и все чудесно работает не один год, но сейчас появилась необходимость поставить второй почтарь, для клиента, свой собственный и разместить его в моей же локалке.
Задача: настроить smtp+imap прокси для распределения почты по нужным серверам. Нашел во такую статейку: https://www.dmosk.ru/miniinstruktions.php?mini=nginx-proxy-mail но там про авторизацию пользователей, для балансировки нагрузки, но это не то что мне нужно.
Итак вводные:
Роутер с белым IP.
сервер1 (стоит внутри сети с серым IP) - почтовик для домена domain.ru
сервер2 (стоит внутри сети с серым IP) - почтовик для домена example.com

Нужно, чтобы входящие письма для домена domain.ru переправлялись на "сервер1", а для example.com на "сервер2".

Как и чем можно такое реализовать.
Есть FreeBSD, на котором развернут Nginx+php-fpm+mysql он же прорисует веб-морду почтовика, с этим все просто, а как быть с smtp? Да, кстати, через прокси нужно не только получать почту от других почтовых серверов, но и подключаться снаружи почтовыми клиентами.

Подскажите пожалуйста решение.

Пока суть до дела, нашел статейку: https://www.vcloudnine.de/load-balancing-inbound-smtp-connec.../
В ней описывается балансировка между двумя почтовыми серверами, но так же я могу не только балансировать, а распределять почту исходя из домена получателя?
Вот кусок кода:
> mode tcp
>     no option http-server-close
>     balance roundrobin
>     option smtpchk HELO mail.terlisten-consulting.de
>     server mail1 192.168.200.107:25 send-proxy check
>     server mail2 192.168.200.108:25 send-proxy check

Тут я понимаю, что анализирую весь TCP-трафик. В данном случае интересует строчка: option smtpchk HELO mail.terlisten-consulting.de
Как я понимаю, поправьте меня, если я ошибаюсь, данной правило срабатывает, то есть передается весь TCP, если срабатывает обращение HELO mail.terlisten-consulting.de
Простите, с английским беда.
Другими словами, если обращение будет к другому серверу, то все замечательно будет срабатывать, вот так:
> mode tcp
>     no option http-server-close
>     balance roundrobin
>     option smtpchk HELO mail.domain.ru
>     server mail1 10.10.10.1:25 send-proxy check
> mode tcp
>     no option http-server-close
>     balance roundrobin
>     option smtpchk HELO mail.example.com
>     server mail2 10.10.20.1:25 send-proxy check

Я правильно мыслю?
если да, то другой вопрос, если на этом же сервере работает Nginx, то не будет ли проблем с http(s) трафиком?

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру