Обратный прокси-сервер удаленного IMAP/SMTP-сервера с NGINX

Обратный прокси-сервер удаленного IMAP/SMTP-сервера с NGINX

Возможно ли использовать обратный прокси-сервер для удаленного (управляемого другой компанией, например, Google Apps или Office 365) SMTP/IMAP-сервера через NGINX? Пример:

Я размещаю example.comи использую mailhost.comдля размещения своей почты. Я пробовал добавить 2 записи CNAME, example.comчтобы добиться этого, но это не сработало. [ smtp.example.com-> smtp.mailhost.com, и т.д.]

Предпочтительно, я хочу один поддомен ( mail.example.com), указывающий на оба smtp.mailhost.comи imap.mailhost.com, различая их с помощью портов. [ mail.example.com:993-> imap.mailhost.com:993, smtp.example.com:587-> smtp.mailhost.com:587]

Возможно ли это? Единственная причина, по которой я хочу это сделать, — упростить настройку почтовых клиентов для пользователей моего сайта и прекратить путаницу, когда они спрашивают, почему я прошу их подключиться к, казалось бы, случайному домену для получения писем. Я понимаю, что это может вызвать некоторые проблемы с DKIM и т. д.

Это простая задача, больше мороки, чем пользы, или невыполнимая? Я могу настроить почтовый сервер, но предпочел бы использовать готовое решение.

решение1

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

Использование PHP-скрипта на сервере Apache в качестве бэкэнда аутентификации IMAP

Я потратил несколько недель, чтобы найти работающее решение, так как mocking the auth service не работал у меня должным образом. После отключения всех функций SSL и добавления скрипта auth php я наконец смог получать электронные письма с IMAP через прокси NGINX.

Одна из проблем, которая все еще существует для SMTP, заключается в следующем: NGINX не пересылает команду аутентификации на сервер:https://forum.nginx.org/read.php?2,58181,58186#msg-58186.

Поэтому отключение аутентификации для SMTP необходимо для использования почтового прокси NGINX. Если кто-то найдет обходной путь, пожалуйста, опубликуйте решение здесь:https://stackoverflow.com/questions/56031592/nginx-forwarding-smtp-auth-credentials-to-next-server/56583571#56583571

Вот несколько ссылок по теме, которой я хочу поделиться:

решение2

Это довольно хорошо описано вНастройка NGINX в качестве почтового прокси-сервераруководство в официальных документах.

Однако следует отметить, что у вас могут возникнуть проблемы с доставкой почты, если вы не сможете привести конфигурацию SPF, SSL и DKIM в соответствие с вышестоящей.

Связанный контент