События SOGo приходят в Outlook, а встречи из Outlook — не возвращаются: разбираем ActiveSync-синхронизацию
Если в SOGo встреча появляется в Outlook, а созданная в Outlook встреча не возвращается никуда — это не баг вашего mailcow-сервера. SOGo (тикет #5921) подтвердил: ошибка «Arithmetic overflow» возникает внутри самого Outlook при отправке нового события по ActiveSync, ещё до отправки запроса на сервер. Разбираю причину, что реально помогает, а что нет.
Симптом: SOGo видит новую встречу, Outlook — нет
У самиздат-лаб «Малый тираж» редакция — 25 рабочих мест — держит собственный mailcow: почта, календарь и контакты в одном месте, и почти три года всё работало ровно. В конце лета мне позвонил их системный администратор с симптомом, который я слышу от клиентов на mailcow регулярно: заведующая редакцией создаёт в SOGo встречу с типографией на пятницу — событие через минуту появляется у всех в Outlook. Редактор ставит в своём Outlook встречу с автором на вторник — и это событие не появляется больше нигде: ни в SOGo, ни на телефоне у коллеги, ни у самого редактора неделю спустя при повторном открытии Outlook на другом компьютере.
Первое, что я всегда проверяю в такой ситуации — не сломан ли транспорт вообще. Почта у «Малого тиража» на аутсорсе корпоративной почты, который мы ведём для полутора десятков клиентов, поэтому диагностика началась со стандартного вопроса: письма ходят? Контакты синхронизируются? В обоих случаях — да, без нареканий. Проблема была ровно в одном направлении одного типа данных: события календаря, созданные в Outlook через ActiveSync, не покидали Outlook. Это специфический и хорошо задокументированный сценарий — я разберу его до причины, а не просто дам список «попробуйте это».
Прежде чем гадать, я исключил самое банальное. Часовые пояса на сервере и в SOGo совпадали. Файрвол клиента не резал исходящий трафик — редактор проверил это из офиса и из дома через мобильный интернет, эффект был одинаковый. Сброс кэша устройства ActiveSync в mailcow UI (вход под затронутым ящиком, вкладка Settings) тоже ничего не изменил — это стандартный первый шаг при сбоях EAS, и в моей практике он чаще всего решает проблемы с пропавшими папками или зависшим FolderSync, но не эту. Раз сброс устройства не помогает, дело не в состоянии синхронизации на сервере, а где-то глубже.
Почему это не баг вашей установки: Outlook сам не отправляет новое событие
Разгадку нашли не в mailcow, а в баг-трекере самого SOGo — тикет #5921, открытый в феврале 2024 года и до сих пор висящий в статусе «feedback / reopened». Тикет назначен на администратора проекта SOGo (в трекере — qhivert); в ходе разбора на стороне Outlook включили подробное логирование и получил результат, который снимает вопросы про настройки сервера: Outlook вообще не отправляет запрос при попытке синхронизировать новое событие. Вот точная цитата ошибки из его отчёта в тикете:
<Error>
<Hr>80020012</Hr>
<Message>Arithmetic overflow.</Message>
<File>src\outlook\pstprx\storeas\eascontentuploader.cpp</File>
<Line>182</Line>
</Error>Файл в пути ошибки — eascontentuploader.cpp — прямо называет виновника: модуль Outlook, отвечающий за отправку контента по протоколу ActiveSync, падает с арифметическим переполнением ещё до того, как соберёт и отправит запрос. По данным тикета, Outlook 2019 с тем же SOGo синхронизирует в обе стороны, а сравнение обмена показало: все остальные запросы и ответы между клиентом и SOGo идентичны, различается только этот один шаг — отправка нового события. Сервер здесь ни при чём в буквальном смысле: в логах sogod вы не увидите даже попытки — Outlook просто не доходит до отправки.
Отдельно хочу развести два похожих на первый взгляд сценария, чтобы не запутать администраторов, которые гуглят похожие симптомы. В январе 2024 года у части пользователей Outlook (сборка 2401, build 17231.20182) ActiveSync-подключение переставало работать целиком — не только новые события, а вообще всё. Это была отдельная и уже закрытая история: Microsoft сама признала проблему в официальной заметке поддержки и выпустила исправление в сборке 2402 (build 17328.20068 и новее). Наш случай другой: почта, контакты и «входящая» синхронизация календаря работают, ломается только отправка новых событий из Outlook наружу, и эта проблема пережила уже больше десятка релизов Outlook после 2402 и по состоянию на сентябрь 2026 официально не закрыта ни Microsoft, ни SOGo: команда SOGo передала ошибку в Microsoft через портал обратной связи и просит пользователей голосовать за неё.
Что реально помогает, а что — просто совпадение: разбор комьюнити-тредов
В треде mailcow-комьюнити «Outlook Calendar only syncs one way», который растянулся на несколько месяцев осени 2024 года, больше двадцати ответов — и это хорошая иллюстрация того, как трудно диагностировать баг с непредсказуемым проявлением. Автор темы откатил Outlook на рабочем компьютере с последней версии до сборки 2407 — ошибка осталась; на домашнем ноутбуке с 2408 — то же самое, хотя сборки дома и на работе совпадали, и он даже подозревал сеть. Попутно выяснилось, что у другого участника на 2408 (32 бит) всё работает. Другой участник треда сообщил, что на двух машинах в одной сети с идентичным build 16.0.17928.20156 один компьютер синхронизируется, второй — нет. Вывод, который я делаю из этого разброса: привязка к конкретному номеру сборки Outlook ненадёжна как диагностический критерий — воспроизводимость капризная даже у людей с вроде бы одинаковым окружением.
Более устойчивая закономерность — разрядность Outlook. Несколько участников треда независимо сообщили, что переход с 64-битного Outlook на 32-битный устранял проблему, и один из них подтвердил это уже после апгрейда до build 16.0.18129.20100 именно в 32-битной сборке — «calendar sync both ways, works like a charm». Это логично согласуется с находкой SOGo про арифметическое переполнение: такие ошибки типично чувствительны к разрядности целочисленных вычислений. Но я не переоцениваю эту закономерность — в тикете SOGo #5921 проблему фиксировали и на 32-, и на 64-битных установках, а в том же обсуждении есть ещё и контрпример: чистая установка Windows 11 с Office 2024 64-бит, где в мае 2025 баг воспроизвёлся снова, и автор просто перешёл на CalDAV-синхронизацию, так и не протестировав 32-бит. Поэтому предлагаю клиентам пробовать 32-битный Outlook как дешёвый первый эксперимент, а не как гарантированное решение.
Ещё один шаг, который стоит сделать для очистки совести перед тем, как переходить к архитектурным решениям — принудительный ресинк устройства через sogo-tool. Команда выполняется внутри контейнера SOGo:
docker compose exec -u sogo sogo-mailcow sogo-tool manage-eas listdevices user@example.com
docker compose exec -u sogo sogo-mailcow sogo-tool manage-eas resetdevice user@example.com <deviceId>listdevices показывает привязанные идентификаторы устройств для ящика, resetdevice форсирует полную пересинхронизацию нужного устройства. Это штатный инструмент SOGo — я использую его при сбоях папок или зависшем FolderSync. Но в контексте нашей проблемы результат предсказуем: в треде сброс кэша устройства через mailcow UI пробовали на ноутбуке и на десктопе — эффекта на одностороннюю синхронизацию новых событий нет, и у «Малого тиража» resetdevice тоже ничего не дал — потому что проблема, как разобрано выше, вообще не в состоянии устройства на сервере, а в том, что Outlook не отправляет запрос.
Что официально говорит документация mailcow — и почему это «не рекомендуемая» связка
Официальная документация mailcow не оставляет простора для интерпретаций — в разделе про настройку Outlook есть отдельное предупреждение прямым текстом: «mailcow's ActiveSync support does not work reliably with Outlook on Windows. We strongly discourage using this setup» — поддержка ActiveSync в связке с Outlook на Windows работает ненадёжно, и разработчики прямо не рекомендуют такую конфигурацию. Формулировка не голословная «на всякий случай»: страница написана и поддерживается той же командой, что выпускает релизы mailcow каждые один-два месяца, и предупреждение сохраняется при последних правках документации.
Вторая официальная причина конкретнее первой и касается именно современных версий Outlook. Начиная с Outlook 2019 включительно (и далее — Microsoft 365, новый Outlook) Microsoft отключила базовую аутентификацию для ActiveSync и требует OAuth2, а этот метод авторизации несовместим с текущей реализацией mailcow. Для ручного подключения EAS документация отсылает к легаси-мастеру настройки C:\Program Files (x86)\Microsoft Office\root\Office16\OLCFG.EXE — обычный мастер добавления учётной записи Outlook такой сценарий уже не ведёт. То есть EAS в современных Outlook держится на обходном пути, а не на поддерживаемой конфигурации.
Третий факт я узнал не из документации, а из ответа участника команды mailcow (ник DerLinkman) в соседнем треде «Outlook ActiveSync Calendar Events Not Syncing» от 24 марта 2025 года: у команды mailcow был разговор с разработчиками SOGo, и в переработанной версии SOGo 2026 года, на которую mailcow со временем перейдёт, функциональность EAS уберут полностью. Другими словами — чинить эту ветку никто не планирует, её планируют убрать. На релиз mailcow «Mootember 2026» (сентябрь 2026, SOGo 5.12.11) это ещё не распространяется — EAS там всё ещё присутствует в прежнем виде, но администраторам стоит закладывать эту перспективу в свои планы, а не рассчитывать, что баг когда-нибудь тихо починят апдейтом.
Новый Outlook (New Outlook) — тут ActiveSync и CalDAV не работают вообще
Если в компании часть сотрудников уже пересажена на «новый Outlook» (New Outlook, предустановленный в свежих сборках Windows) — для них разговор про ActiveSync вообще не актуален в старом виде. Официальная документация формулирует это жёстко: новый Outlook не поддерживает календари и адресные книги по CalDAV/CardDAV — ни нативно, ни через плагин Outlook CalDav Synchronizer. EAS-сценария для нового Outlook документация mailcow не описывает вовсе, а базовая аутентификация EAS, по той же странице, в Outlook отключена ещё с версии 2019 — рассчитывать поднять календарь SOGo через ActiveSync в новом Outlook не на что.
Единственный поддерживаемый путь для нового Outlook — ручная настройка почты по IMAP и SMTP без какой-либо синхронизации календаря и контактов: сервер IMAP — тот же FQDN mailcow, порт 993 с SSL/TLS, сервер SMTP — тот же FQDN, порт 587 с STARTTLS. Про сами данные для входа документация делает отдельную и, на мой взгляд, недооценённую оговорку: логин и пароль, введённые в новом Outlook, передаются и обрабатываются на серверах Microsoft — команда mailcow прямо пишет, что «настоятельно не рекомендует» новый Outlook по соображениям приватности, а не только из-за функциональных ограничений.
Для «Малого тиража» это стало практическим решением, а не теорией: у двух редакторов, которые перешли на New Outlook вместе с обновлением Windows, календарные приглашения от типографии и внештатных корректоров попросту перестали появляться, и вернуть их штатными средствами Outlook нет способа. Мы завели им закладку на веб-SOGo как основной календарь и договорились с клиентом: там, где Outlook окончательно перестаёт справляться с базовыми задачами редакции, разумнее смотреть на альтернативы целиком, а не подгонять экосистему Microsoft под себя — сравнение вариантов я разбирал отдельно в статье про переход с Microsoft Office на российские аналоги.
Рабочее решение для классического Outlook: Outlook CalDav Synchronizer
Для классического Outlook (2007 и новее, но не новый Outlook) у mailcow есть официально поддерживаемая альтернатива ActiveSync — плагин Outlook CalDav Synchronizer. Он синхронизирует календарь, контакты и задачи через протоколы CalDAV/CardDAV напрямую с SOGo, в обход капризного EAS-модуля Outlook, в котором и живёт арифметическое переполнение из раздела выше. Порядок настройки по документации mailcow такой: скачать и установить Outlook CalDav Synchronizer, добавить почтовый аккаунт в Outlook обычным способом, затем во вкладке CalDav Synchronizer открыть Synchronization Profiles, нажать «Add multiple profiles», выбрать профиль SOGo, подтянуть настройки из уже добавленного аккаунта кнопкой «Fetch settings from IMAP/POP3 account», запустить «Discover resources» и сопоставить обнаруженные ресурсы с папками Outlook — по одному ресурсу на папку (календарь, адресная книга, задачи).
Важная оговорка из той же документации, которую легко пропустить: гайд по CalDav Synchronizer прямо помечен как несовместимый с новым Outlook — «This guide is not compatible with the new Outlook». То есть для сотрудников на New Outlook этот путь закрыт в принципе, а для классического Outlook — рабочий, но требует отдельной установки на каждую машину: это стороннее ПО, а не встроенная функция Windows или Outlook, и его нужно поставить, настроить профиль синхронизации и поддерживать при последующих обновлениях самого Outlook.
На 25 рабочих местах ставить и настраивать плагин вручную на каждом компьютере — не вариант, поэтому мы упаковали установку и создание профиля в один пакет для группового разворачивания через тот же механизм, которым обычно накатывают патчи Windows на парк из нескольких десятков машин — я подробно писал об этом принципе в статье про патч-менеджмент вместо ручных обновлений. Профиль синхронизации CalDav Synchronizer хранится в реестре пользователя, поэтому после первой ручной настройки его можно экспортировать .reg-файлом и применить групповой политикой или скриптом входа для остальных сотрудников на том же сервере SOGo — меняется только email пользователя в пути ресурса.
Что я делаю на проде клиента: чек-лист и итоговое решение
Итоговая раскладка у «Малого тиража» получилась такой. Из 25 рабочих мест на классическом Outlook (без перехода на новый интерфейс) сидели 19 человек — для них я сначала предложил дешёвый эксперимент: проверить разрядность установленного Outlook и, если стоит 64-бит, попробовать переустановку на 32-бит как самый быстрый тест по опыту комьюнити-тредов. У шести из девятнадцати это действительно решило проблему без единого дополнительного плагина. Оставшимся тринадцати, у кого 32-бит не помог или 64-бит нужен по другим причинам (надстройки, привязка к другим корпоративным инструментам), мы поставили Outlook CalDav Synchronizer по описанной выше схеме.
Ещё шесть человек в редакции уже сидели на новом Outlook — для них, как разобрано в разделе про New Outlook, вариантов с синхронизацией календаря в самом Outlook просто нет физически, поэтому рабочим календарём стал веб-интерфейс SOGo: на мобильном отдельный вход, на десктопе — закладка в браузере рядом с остальными рабочими вкладками. Не идеальное решение с точки зрения привычки сотрудников, но честное: оно не притворяется, что проблема решена, когда событие всё равно потеряется в проде издательских дедлайнов.
Главный практический вывод для любого админа, который встречает этот симптом впервые: не тратьте часы на сетевую диагностику, DNS, файрвол или настройки mailcow — причина живёт внутри бинарника Outlook, а не на вашем сервере, и признанного Microsoft или SOGo исправления для неё по состоянию на сентябрь 2026 нет. Первым шагом проверяйте разрядность Outlook, вторым — переводите тех, кому критичен календарь, на CalDav Synchronizer, третьим — закладывайте в план, что для новых версий Outlook и тем более для New Outlook этот путь синхронизации в принципе не жизнеспособен, и стройте процесс вокруг веб-SOGo, а не вокруг надежды на апдейт от Microsoft.
- Классический Outlook, 64-бит, календарь критичен → сначала попробовать 32-бит, если не помогает — Outlook CalDav Synchronizer
- Классический Outlook, 32-бит уже стоит и баг воспроизводится → сразу Outlook CalDav Synchronizer
- New Outlook → календарь и контакты только через веб-SOGo, ActiveSync и CalDAV не рассматривать
- Почта и контакты продолжают работать через ActiveSync как есть — трогать не нужно, проблема только в новых событиях календаря
- sogo-tool manage-eas resetdevice — держать в арсенале для других сбоев EAS, для этой проблемы он бесполезен
Частые вопросы
Это баг mailcow или SOGo?
Ни то ни другое в строгом смысле. По данным тикета SOGo #5921, ошибка «Arithmetic overflow» возникает внутри самого Outlook при попытке отправить новое событие по ActiveSync, ещё до отправки запроса на сервер — ни mailcow, ни SOGo этот код не контролируют.
Поможет ли переустановка Outlook или откат на старую сборку?
Не гарантированно. В комьюнити-тредах откат с 2408 на 2407 не убрал проблему, а два компьютера с идентичной сборкой в одной сети вели себя по-разному. Переход на 32-битный Outlook помогал чаще, но тоже не всем — известен минимум один контрпример на Office 2024 64-бит.
А если у нас новый Outlook (New Outlook)?
Тогда ActiveSync и CalDAV для календаря не работают в принципе — это официально задокументированное ограничение, а не частный сбой. Единственный путь — ручной IMAP/SMTP для почты и веб-интерфейс SOGo для календаря.
Поможет ли команда sogo-tool manage-eas resetdevice?
Для этой конкретной проблемы — нет, хотя команда полезна при других сбоях EAS (зависшие папки, испорченный кэш устройства). Причина в клиенте Outlook, а не в состоянии синхронизации на сервере, поэтому сброс устройства её не устраняет.
Стоит ли ждать, что разработчики починят это в следующих версиях?
По данным от участника команды mailcow (март 2025), в переработанной версии SOGo 2026 года функциональность ActiveSync планируют не чинить, а убрать целиком. Рассчитывать на официальный фикс не стоит — лучше сразу планировать переход на CalDAV Synchronizer или веб-календарь.
Можно ли оставить ActiveSync для почты и контактов, а календарь синхронизировать отдельно?
Да, это рабочая комбинация. Почта и контакты через ActiveSync у большинства пользователей синхронизируются нормально — проблема специфична именно для новых событий календаря. Для календаря подключаем отдельно CalDav Synchronizer (классический Outlook) или веб-SOGo.
Источники
- docs.mailcow.email — Microsoft Outlook (client configuration) — Проверил точный текст предупреждения про ненадёжность ActiveSync на Windows, факт отключения базовой аутентификации EAS с Outlook 2019+ и несовместимость с OAuth2, путь к легаси-мастеру OLCFG.EXE, шаги настройки Outlook CalDav Synchronizer и ограничения нового Outlook (нет CalDAV/CardDAV, только IMAP 993 / SMTP 587). https://docs.mailcow.email/client/client-outlook/
- mailcow community — Outlook Calendar only syncs one way — Проверил хронологию треда (18.09.2024–26.05.2025, 23 ответа): откат на 2407 без эффекта, разное поведение двух ПК с build 16.0.17928.20156, сброс кэша EAS-устройства в mailcow UI без эффекта, 32-бит build 16.0.18129.20100 — «works like a charm», контрпример Office 2024 64-бит. https://community.mailcow.email/d/4050-outlook-calendar-only-syncs-one-way
- mailcow community — Outlook ActiveSync Calendar Events Not Syncing with Mailcow, but SOGo Works — Проверил исходный симптом (19.02.2025), совет попробовать 32-битный Outlook и ответ DerLinkman от 24.03.2025: SOGo уберёт EAS в переработанной версии 2026 года. https://community.mailcow.email/d/4564-outlook-activesync-calendar-events-not-syncing-with-mailcow-but-sogo-works
- SOGo Bug Tracker — issue #5921 — Проверил: тикет от 07.02.2024 «Outlook 2021 (365) stopped syncing via EAS», статус feedback/reopened, ошибка Hr 80020012 «Arithmetic overflow» в eascontentuploader.cpp:182, Outlook 2019 работает в обе стороны, проблема видна на 32- и 64-бит, ошибка передана в Microsoft. https://bugs.sogo.nu/view.php?id=5921
- Microsoft Support — Outlook desktop Exchange ActiveSync connections stopped working in version 2401 — Проверил, что breaking-баг сборки 2401 (build 17231.20182) — отдельная, уже закрытая история Microsoft с фиксом в 2402 (build 17328.20068), не связанная напрямую с текущей проблемой односторонней синхронизации новых событий. https://support.microsoft.com/en-us/office/outlook-desktop-exchange-activesync-connections-stopped-working-in-version-2401-da2dc0dd-297e-48ba-b6d9-ab18f5d522fc
- mailcow: dockerized — Blog, релиз 2026-09 («Mootember 2026») — Проверил актуальную на сентябрь 2026 версию mailcow-dockerized и SOGo (5.12.11) — EAS в этом релизе всё ещё присутствует в прежнем виде, подтверждая, что анонсированное удаление функциональности пока не наступило. https://mailcow.email/posts/2026/release-2026-09/



