Некоторое время безуспешно пытался найти решение этой проблемы, поэтому я иду:
Мне было поручено построить сетевой кластер с высокой доступностью и балансировкой нагрузки для двух наших серверов Linux. Я нашел обходной путь и мне удалось получить синхронизацию DNS + SQL + Web Folders + Mails между ними. Теперь я бы хотел, чтобы мой сервер 2 выполнял только рассылку, а сервер 1 - только веб-хостинг. Я перевел все учетные записи с 1 на 2, используя встроенную функцию переноса учетных записей WHM. Я создал 2 разных задания rsync, которые синхронизируют, обновляют и удаляют файлы для почты и веб-сайтов.
Теперь я смог успешно перенести 1 почтовый аккаунт с 1 на 2, и сервер 2 работает безупречно. Все, что мне нужно было сделать, это изменить записи MX, чтобы они указывали на новый сервер и бинго. Моя проблема в том, что у некоторых клиентов почтовые программы настроены так, что они указывают на oldserver.domain.com. Я не могу указать (A) в oldserver.domain.com на новый сервер по очевидным причинам. Я думал использовать файлы .foward и добавить их в домашние каталоги заинтересованных пользователей, но это было бы очень сложно.
Итак, мой вопрос: есть ли способ настроить exim так, чтобы он отправлял почту только на новый сервер? Мне нужно изменить всех пользователей, чтобы они использовали свою почту на сервере 2, ничего не делая. Спасибо!
РЕДАКТИРОВАТЬ: ДЛЯ УТОЧНЕНИЯ МОЕЙ ПРОБЛЕМЫ
У некоторых клиентов есть почтовая точка oldserver.xyz вместо mail.olderserver.xyz. Я хочу знать, могу ли я что-то сделать, чтобы предотвратить изменение конфигурации клиентов.
Я также хотел бы знать, есть ли способ узнать, какие клиенты не настроены должным образом
Могли бы вы использовать socat для переадресации соединений для ваших клиентов с oldserver.xyz на mail.oldserver.xyz?
Итак, на oldserver.xyz вы должны запустить:
socat TCP-LISTEN:25,fork TCP:mail.oldserver.xyz:25
socat TCP-LISTEN:110,fork TCP:mail.oldserver.xyz:110
socat TCP-LISTEN:993,fork TCP:mail.oldserver.xyz:993
socat TCP-LISTEN:995,fork TCP:mail.oldserver.xyz:995
для всех услуг, через которые вы хотите пройти. Таким образом, вам даже не нужно запускать почтовый сервер на oldserver.xyz.
Для извлечения имен пользователей, чтобы увидеть, кому нужно обновление, потребуется дополнительная информация о том, какие службы они используют. Вы можете обнюхать их, если они не зашифрованы, или отключить SSL, используя stunnel, чтобы получить к нему доступ. Здесь также могут быть полезны журналы вашего SMTP / POP3 / IMAP-сервера.
В конечном итоге вам нужно очистить конфигурации клиента, иначе он укусит, когда вы в следующий раз захотите сменить хост.
Запустите почтовый сервер на oldserver.xyz, который пересылает почту на правильный сервер. Используйте журналы с этого сервера в ежедневной пакетной обработке, чтобы определить, какие клиенты неправильно настроены. Создавайте уведомления для клиентов.
Бонусные баллы за наличие в вашем контракте пункта, который позволяет вам взимать больше денег, если клиенты неправильно настроены и вызывают операционные расходы. :)