Место, где я работаю, в настоящее время использует Postfix / Dovecot на CentOS 6 для нашей почты. В будущем мы перейдем на Exchange 2013 на Windows Server 2012. Мне поручили эту задачу, и я (очевидно) хотел бы, чтобы миграция прошла как можно более гладко.
Проблема в том, что документации по такой миграции не так уж и много. По крайней мере, не с Exchange 2013. При этом у меня есть пара вопросов.
Я хотел бы сохранить наш текущий почтовый сервер в качестве узла ретрансляции, поскольку на нем есть спам-фильтр, который нам нравится. Насколько я понимаю, если я хочу этого добиться, все, что мне нужно сделать, это добавить эту строку в мой main.cf:
relayhost = ExchangeServer.domain.com
Затем добавьте почтовый сервер в качестве доверенного сервера в обмен. Это правильно?
Другой мой вопрос: есть ли способ сохранить электронную почту всех моих пользователей? Судя по моему исследованию, это было возможно в Exchange 2003 и 2007. Но, похоже, это невозможно напрямую в Exchange 2013 без приобретения корпоративного решения, чего я бы хотел избежать.
Я вижу из этот опубликуйте, что imapsync может быть жизнеспособным вариантом. Но я так понимаю, что этот инструмент не работает для обмена (также это платное решение).
Любая помощь приветствуется.
Размещение вашего сервера обмена в main.cf
так как relayhost
почти достаточно: из-за того, как Postfix обрабатывает Классы адресов, то relayhost
никогда не будет использоваться, если Postfix считает, что это конечный пункт назначения для входящей почты (т.е. домен получателя находится в пределах mydestination
, virtual_mailbox_domains
и так далее).
Итак, что вам нужно сделать, так это переместить соответствующий домен в relay_domains
(и если бы у вас был transport_maps
который указал для него нестандартный транспорт, избавьтесь и от этой записи).
Остается только одна проблема: проверка того, что получатель действительно существует на сервере Exchange. Если вы можете запросить AD / LDAP, тогда нет проблем, просто установите relay_recipient_maps
. Если нет, вам нужно будет использовать проверку получателя. Предполагая, что почта для example.com должна ретранслироваться на сервер Exchange:
smtpd_restriction_classes = relay_verification
relay_verification = check_unverified_recipient
# if Postfix > 2.10, you can also do this in smtpd_relay_restrictions
smtpd_recipient_restrictions =
...
check_recipient_access hash:/etc/postfix/relay_verification
...
И в /etc/postfix/relay_verification
:
example.com relay_verification
Для второй части вашего вопроса используйте imapsync или аналогичные инструменты.