Назад | Перейти на главную страницу

Postfix - доставлять почту на один и тот же адрес на двух разных серверах

В настоящее время мы переносим наш корпоративный почтовый сервер (Postfix / Cyrus, с бэкэндом OpenLDAP) с одного компьютера на другой, расположенный вне офиса. Перед тем, как сделать полный переход, я надеялся сначала перенести одну или две из наших самых громких (а также самых громких жалоб), потому что, если есть какие-либо проблемы, которые каким-то образом пропущены в моей конфигурации и тестировании, они будут обязательно дайте мне знать.

Все транспортные сопоставления в настоящее время хранятся в ldap. Я создал отдельную хешируемую транспортную карту и настроил Postfix для ее использования, например:

transport_maps = hash:/etc/postfix/oldmail_transport,ldap:trans

А в / etc / postfix / oldmail_transport у меня есть:

user1@domain.com :[newmailserver.domain.com]
user2@domain.com :[newmailserver.domain.com]

domain.com существует в virtual_alias_domains на обоих серверах.

Проблема в том, что это не работает. Старый почтовый сервер видит, что user1@domain.com является локальным адресом, доставляет на него почту и на этом заканчивает работу. Похоже, что единственный способ заставить транспортную карту работать - это удалить domain.com из virtual_alias_domains на старом сервере, что, конечно, нарушит доставку всем моим другим пользователям в этом домене.

Правильно ли я использую transport_maps здесь? Есть ли другой метод, который я должен использовать, чтобы заставить postfix делать то, что я хочу?

Заранее спасибо за вашу помощь!

Этот вопрос поднимался раньше, и вы сталкиваетесь с той же проблемой, которая возникает каждый раз: если вы настраиваете два почтовых сервера как авторитетные для домена, не существует по-настоящему простого способа заставить один из них отправлять электронные письма, адресованные "себе" другому. сервер.

Лучше всего, вероятно, провести тестирование с временным доменным именем на новом сервере. Если вы хотите, чтобы ваши активные пользователи провели часть тестирования, отправьте копии их сообщений на новый сервер.

Могу я предложить другой подход?

Для обработки соединений POP / IMAP используйте Погибель. Он прозрачно для конечного пользователя передает трафик POP / IMAP на нужный сервер. Поиск на внутреннем сервере может быть выполнен из LDAP, текстового файла или другого метода, который вы хотите использовать. Итак, с Perdition вы можете переносить своих пользователей со старого сервера на новый один за другим, даже не заметив их. Просто создайте сценарий, который переносит почту со старого сервера на новый, а затем обновляет LDAP / текстовый файл / что угодно, чтобы сообщить Perdition, что пользователь только что перешел.

Я перенес что-то между 50 000 - 100 000 учетных записей пользователей в прошлом, используя этот метод, без видимых простоев для пользователей.

Для SMTP поиск на почтовом сервере прост, и вы, кажется, уже выполняете его через LDAP. :)