Как установить запись MX, чтобы доставка приводила к временному сбою

Я перемещаю SMTP-сервер с хост к другому. Чтобы упростить мне задачу (и поскольку мне все равно, если электронная почта задерживается на несколько часов), я хотел бы применить эту стратегию:

  1. Я установил для записи MX для этого домена некоторое значение это гарантирует, что каждая попытка доставки приводит к временному сбою и ожидает истечения срока жизни. Таким образом, отправители, пытающиеся доставить, просто начнут хранить свои сообщения, пока я не закончу.

  2. Я копирую почтовые ящики и соответствующий материал со старого на новый хост. Я проверяю, что новый хост работает правильно. Ожидается, что отправители будут хранить отложенные сообщения в течение нескольких дней, так что у меня достаточно времени.

  3. Я обновляю запись MX, чтобы она указывала на новый хост. Как только отправители захотят повторить попытку, они добьются успеха с новым хостом.

Трудный вопрос №1: как я могу установить запись MX, чтобы фактическая доставка не выполнялась, а сообщение задерживалось? Установка MX не работает, потому что тогда предпринимается попытка разрешения A или AAAA, и я хочу сохранить A и AAAA на старом хосте, чтобы избежать нарушения работы других служб. Поможет ли мне установка несуществующего домена? Я не мог понять, будет ли такая ошибка интерпретирована как временная или постоянная.

0
задан 8 March 2020 в 18:53
3 ответа

Я не уверен, что это хорошая стратегия, и не то, что я попытаюсь на уровне DNS, если смогу этого избежать. Чтобы реализовать это, просто найдите контролируемый вами IP-адрес, убедитесь, что он не прослушивает порт 25, и укажите запись MX на запись A для этого адреса. Если у вас есть время, установите для этой записи более низкий приоритет (большее число) и низкий TTL. Также установите низкий TTL для основного MX.

Вы можете использовать свой старый MX-сервер и просто остановить на нем службу SMTP - это, вероятно, самый простой способ достижения вашей цели, но не решение уровня DNS.

Что вы ищете для достижения удаленного доступа очередь электронной почты - это сервер, который не отвечает на порт 25, или сервер, который возвращает ошибку (например, 421).

Я могу попробовать это по-другому, либо настроив сервер для приема электронной почты и поставив ее в очередь, чтобы я мог сбросить его на основной сервер, когда он снова заработает, или (при использовании формата maildir), используя немедленное поступление новых сообщений на сервер и синхронизацию старых. В идеале в это время следует отключить POP / IMAP.

3
ответ дан 30 March 2020 в 01:17

Ваш метод - верный способ потерять электронную почту. Что вы хотите сделать, так это остановить / заблокировать / отключить входящий SMTP на текущем хосте. Отправляющие серверы поставят электронное письмо в очередь и попытаются доставить его позже (обычно до 48 часов).

Когда новый хост будет готов, измените запись MX соответствующим образом. Как только электронная почта перейдет на новый хост, вы можете скопировать содержимое почтового ящика со старого хоста на новый хост.

2
ответ дан 30 March 2020 в 01:17
  1. Я копирую почтовые ящики и соответствующие вещи со старого на новый хост. я проверьте, что новый хост работает правильно. Отправители должны оставить отложенные сообщения на несколько дней, так что у меня много времени.

Если я правильно понимаю ваши намерения, вы хотите выделить себе время, чтобы скопировать материал и протестировать. Я бы стремился к почти нулевому времени простоя.

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

Затем с тестовой машины вы можете просто добавить запись в свой hosts файл , который указывает на новый IP-адрес, чтобы обойти обычное разрешение DNS. Затем начните тестирование отправки и получения. Когда ваша конфигурация будет полностью готова, измените DNS, чтобы переключиться на новый хост, и вы можете немедленно списать старый хост, чтобы он больше не получал почту.

Один простой трюк - заблокировать порты 25/465 и т. д. на уровне брандмауэра, например, используя iptables .

Подводя итог, я бы провёл все тесты перед остановкой почтовой службы и изменением настроек DNS. Всегда есть шанс, что что-то пойдет не так, и вы (и ваш клиент) будете испытывать стресс и гоняться со временем.

Есть одна вещь, которую вы не упомянули: как вы будете копировать почту с одного хоста на другой и о каком объеме мы говорим. Например, если вы будете использовать Imapsync, я думаю, можно будет выполнить инкрементную синхронизацию , так что к тому времени, когда вы сделаете переключение, новый хост уже будет иметь почти 100% почты.

0
ответ дан 30 March 2020 в 01:17

Теги

Похожие вопросы