Доброго дня коллеги.
Задался вопросом. Есть у меня в локалке почтовик. Работает чудно, на роутере проброшены порты и все чудесно работает не один год, но сейчас появилась необходимость поставить второй почтарь, для клиента, свой собственный и разместить его в моей же локалке.
Задача: настроить 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) трафиком?