Исправление дат миграции imapsync в Outlook

Почему миграции imapsync показывают неправильную дату в Outlook

imapsync - это инструмент командной строки с открытым исходным кодом, популярный среди системных администраторов для синхронизации IMAP почтовых ящиков между серверами. imapsync включает флаг --syncinternaldates, предназначенный для сохранения исходной INTERNALDATE во время миграции. Однако даже при использовании этого флага целевой почтовый сервер добавляет к каждому загруженному сообщению собственный заголовок Received, и этот заголовок содержит метку времени миграции.

Outlook полагается не только на INTERNALDATE для отображения дат. Столбец "Получено" в Outlook формируется из самого верхнего заголовка Received в письме. Даже если imapsync успешно сохранил INTERNALDATE с помощью --syncinternaldates, новый заголовок Received, добавленный целевым сервером, перезаписывает дату, которую отображает Outlook. Администраторы, считавшие, что защитили даты с помощью правильных флагов imapsync, обнаруживают, что Outlook все равно показывает неверную дату.

Такое поведение застигает врасплох многих опытных администраторов. Документация imapsync фокусируется на сохранении INTERNALDATE, заставляя администраторов считать, что --syncinternaldates достаточно. На практике проблема заголовка Received - это отдельная проблема, которую --syncinternaldates не решает, поскольку заголовок Received добавляется целевым сервером после того, как imapsync завершает загрузку, вне контроля imapsync.

Как это влияет на Outlook

После миграции imapsync Outlook отображает дату миграции в столбце "Получено" для каждого письма. Даже когда использовался --syncinternaldates и IMAP INTERNALDATE технически верна на сервере, Outlook анализирует заголовки Received и отображает самый верхний, которым является метка времени миграции. Результат - почтовый ящик, где каждое письмо выглядит полученным в один день.

Разочарование усиливается тем, что администраторы могут проверить на IMAP-сервере правильность INTERNALDATE, но Outlook все равно показывает неверную дату. Это приводит к часам устранения неполадок на стороне Outlook (переустановка профилей, очистка кэшей, перестройка OST-файлов), которые никогда не решают проблему, поскольку основная причина находится в заголовках писем, а не в локальной конфигурации Outlook. Единственное исправление - удалить миграционный заголовок Received из каждого письма на уровне сервера.

Часто задаваемые вопросы

Я использовал imapsync --syncinternaldates, но Outlook все равно показывает неверную дату. Почему?

Флаг --syncinternaldates сохраняет IMAP INTERNALDATE на сервере, но не может помешать целевому серверу добавить новый заголовок Received. Outlook считывает самый верхний заголовок Received для отображения дат, который содержит метку времени миграции. INTERNALDATE и заголовок Received - это два отдельных источника дат.

Могу ли я исправить даты imapsync, вручную редактируя заголовки Received?

Технически потребуется загрузить каждое письмо, отредактировать заголовки, удалить оригинал и повторно загрузить с правильной INTERNALDATE. Для более чем нескольких писем это непрактично. Redate.io автоматизирует весь этот процесс со встроенной проверкой.

Работает ли Redate.io с любым IMAP-сервером, использованным с imapsync?

Да. Redate.io поддерживает любой стандартный IMAP-сервер. Независимо от того, был ли целевой сервер Dovecot, Courier, Exchange или любой другой IMAP-совместимый сервер, Redate.io может подключиться и исправить даты.

Start Free Scan