CalDAV и CardDAV Яндекса: как перенести календари и контакты на новый почтовый сервер
Облако отдаёт письма, но годами накопленные календари и контакты держит у себя — и без вашего усилия они там и останутся. Уходя из облака на свой сервер, важно забрать не только письма: календари и контакты — такая же часть работы, и их тоже нельзя оставлять у чужого провайдера. CalDAV Яндекса (caldav.yandex.ru) и CardDAV (carddav.yandex.ru) позволяют забрать календари и контакты при переезде, но проще и надёжнее для большинства компаний выгрузка в файлы: контакты — кнопкой «Экспорт контактов» в vCard, календари — владельцем в формате iCal. Письма imapsync их не переносит, поэтому это отдельный шаг на 15–30 минут на сотрудника вручную или скриптом для всех сразу. Ниже — параметры по справке Яндекса, команды выгрузки и загрузки, проверенные на стенде, и подводные камни: группа «Телефонные контакты», общие календари и дубли на телефонах.
Своя почта вместо облака: варианты решения
Облачная почта — это ваша переписка на чужом сервере: когда у провайдера авария, вы ждёте вместе со всеми. Собственный почтовый сервер возвращает компании контроль. Основные варианты:
Почта, антиспам и веб-почта SOGo с календарями в контейнерах Docker; обновление одной командой.
Наследник Zimbra: привычный веб-клиент с календарями и адресными книгами, как в облаке.
Postfix, Dovecot, антиспам и веб-почта на обычном Linux-сервере; от 4 ГБ памяти.
Современный сервер «всё в одном»: IMAP, SMTP, CalDAV, CardDAV; скромные требования.
Carbonio CE или mailcow на наших серверах в ЦОД МТС, антиспам и ежедневные бэкапы — от 150 ₽/мес за ящик.
Не оставляйте календари в облаке
Уходя из облака, многие забирают письма, а календари и контакты оставляют «на потом». В итоге при следующей аварии у провайдера компания теряет доступ к расписанию встреч и телефонам клиентов — к тому, что нужно в первую очередь.
Календари и контакты — такая же собственность компании, как переписка. Их нужно забрать на свой сервер вместе с почтой.
Ваши связи — не собственность провайдера
Контакты клиентов, поставщиков, партнёров — это не просто записи в адресной книге. Это капитал компании, собранный годами. Календари — это память о каждой встрече, каждом обещании, каждом сроке. И всё это лежит у облачного провайдера, в формате и на условиях, которые выбрал он.
В день, когда облако недоступно, вы не видите, с кем назначена встреча через час и куда звонить ключевому клиенту. Перенос контактов и календарей на свой сервер — это не техническая мелочь после переноса писем, а возвращение себе собственной памяти. Без него переезд не закончен.
Почему контакты и календари переносятся отдельно
Письма переносятся по IMAP, а контакты и календари живут в других протоколах: CardDAV (RFC 6352) для адресных книг и CalDAV (RFC 4791) для календарей. Поэтому утилиты переноса почты, включая imapsync, их не трогают, и если не сделать отдельный шаг, после переезда сотрудники обнаружат пустой календарь.
Есть два пути. Первый — выгрузить данные в файлы (vCard для контактов, iCal для календарей) и загрузить на новом сервере. Второй — забрать их напрямую по CardDAV и CalDAV и так же загрузить. Первый проще для нескольких сотрудников, второй удобнее, когда людей много и нужен повторяемый процесс. Можно и сочетать: файлы для личных данных, протоколы для общих календарей.
Общий план переезда — в руководстве по переносу почты с Яндекс 360. Здесь — только контакты и календари, с параметрами по официальной справке Яндекса и командами, которые мы проверили на стенде.
Что именно переносится и что нет
| Данные | Как выгрузить | Особенности |
|---|---|---|
| Личные контакты | «Экспорт контактов» → файл vCard | выгружаются все личные контакты адресной книги |
| Контакты по CardDAV | carddav.yandex.ru | по справке синхронизируется группа «Телефонные контакты» |
| Свой календарь | вкладка «Экспорт» → iCal (ссылка или файл .ics) | iCal и HTML доступны только владельцу календаря |
| Чужие и общие календари | ссылка CalDAV | для не-владельцев доступна только CalDAV |
| Календарь по CalDAV | https://caldav.yandex.ru | пароль приложения типа «Календарь» |
| Адресная книга организации | — | это справочник сотрудников, на новом сервере формируется заново |
Источники: управление контактами, экспорт календаря, синхронизация календаря на мобильном устройстве и справка Яндекс Почты по работе с контактами.
Важная оговорка про CardDAV: по справке Яндекса для синхронизации контакты нужно добавить в группу «Телефонные контакты». Если забирать контакты по CardDAV, а у сотрудника они лежат в других группах, часть контактов не попадёт в выгрузку. Для полного переноса личных контактов надёжнее экспорт в файл vCard.
Способ 1. Через файлы: vCard и iCal
Это самый простой путь, и для большинства небольших компаний его достаточно.
Контакты. По справке Яндекса в разделе «Контакты» нажмите «Экспорт контактов» и «Сохранить» — все личные контакты сохранятся в файл vCard. На новом сервере файл загружается через импорт в адресную книгу: в веб-интерфейсах SOGo (mailcow), Carbonio, Nextcloud и в почтовых программах такая функция есть.
Календари. Владелец календаря открывает настройки календаря (три точки рядом с его названием), вкладку «Экспорт» и выбирает формат iCal. Ссылку можно открыть в браузере и сохранить как файл .ics. На новом сервере файл импортируется в нужный календарь.
Плюсы способа: не нужны пароли приложений и командная строка. Минусы: каждый сотрудник делает это сам (или с помощью администратора на его рабочем месте), а календари других людей, к которым у сотрудника есть доступ, этим способом не выгрузить — для них доступна только ссылка CalDAV.
Если сотрудников немного, удобно сделать это за один короткий созвон: каждый выгружает свои файлы по инструкции и сразу отправляет их ответственному через общее защищённое хранилище, а не по почте, которую как раз переносят.
Способ 2. Напрямую по CalDAV и CardDAV
Когда сотрудников много, удобнее забирать календари и контакты централизованно по протоколам. Параметры Яндекса по справке:
CalDAV: https://caldav.yandex.ru логин: имя@домен пароль: пароль приложения «Календарь»
CardDAV: carddav.yandex.ru логин: имя@домен пароль: пароль приложения «Контакты»Пароли приложений создаются в Яндекс ID в разделе паролей приложений, с выбором соответствующего типа. Как и для почты, пароль показывается один раз; подробности — в статье о подготовке Яндекс 360 к выгрузке.
Выгрузка всех событий календаря — это один стандартный запрос REPORT с фильтром по компоненту VCALENDAR. На стенде (сервер Radicale) мы выполняли его так:
curl -s -u "$USER:$PASS" -X REPORT "$CAL_URL" \
-H 'Depth: 1' -H 'Content-Type: application/xml' \
--data '<?xml version="1.0"?><C:calendar-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:caldav"><D:prop><C:calendar-data/></D:prop><C:filter><C:comp-filter name="VCALENDAR"/></C:filter></C:calendar-query>' \
> export_cal.xmlДля контактов — аналогичный запрос addressbook-query:
curl -s -u "$USER:$PASS" -X REPORT "$BOOK_URL" \
-H 'Depth: 1' -H 'Content-Type: application/xml' \
--data '<?xml version="1.0"?><C:addressbook-query xmlns:D="DAV:" xmlns:C="urn:ietf:params:xml:ns:carddav"><D:prop><C:address-data/></D:prop></C:addressbook-query>' \
> export_card.xmlЗдесь $CAL_URL и $BOOK_URL — адреса конкретного календаря и адресной книги; их можно получить из настроек календаря (ссылка CalDAV) или запросом PROPFIND к серверу. Ответ — XML, внутри которого лежат события (iCalendar) и контакты (vCard). На стенде выгрузка вернула все 3 тестовых события и все 3 контакта.
Загрузка на новый сервер
Загрузить события и контакты по CalDAV и CardDAV можно поштучно, запросом PUT: каждое событие — отдельный файл .ics, каждый контакт — отдельный .vcf, имя файла удобно брать из поля UID. Перед загрузкой на новом сервере создаются календарь и адресная книга (в веб-интерфейсе или запросами MKCALENDAR и MKCOL).
curl -s -u "$USER:$PASS" -X PUT "$NEW_CAL_URL/$UID.ics" \
-H 'Content-Type: text/calendar' --data-binary @event.icsНа стенде мы разобрали XML-ответ выгрузки небольшим скриптом на Python, достали из него каждое событие и контакт и загрузили их PUT-запросами: календарь — 3 из 3, контакты — 3 из 3; на новом сервере проверили, что названия событий («Планёрка 1–3») и имена контактов на кириллице сохранились.
Если новый сервер поддерживает импорт файлов .ics и .vcf в веб-интерфейсе, проще склеить выгрузку в один файл и импортировать его целиком — тогда скрипт не нужен.
Как организовать перенос для всех сотрудников
Когда сотрудников десятки, ручной экспорт превращается в рассылку инструкций и сбор файлов. Централизованный вариант: для каждого сотрудника создаются пароли приложений типов «Календарь» и «Контакты» (вместе с паролем для почты — за один подход), а ответственный запускает скрипт, который для каждого сотрудника выгружает календари и контакты по CalDAV и CardDAV и загружает их на новый сервер.
Логика скрипта та же, что на нашем стенде: запрос PROPFIND, чтобы узнать список календарей и адресных книг пользователя; запрос REPORT для каждого, чтобы получить все объекты; разбор XML; запрос PUT для каждого объекта на новом сервере. Пароли, как и для imapsync, читаются из файлов, а не передаются в командной строке.
Не забудьте ограничение CardDAV: в выгрузку попадёт только группа «Телефонные контакты». Для полноты личные контакты всё равно лучше дополнительно выгрузить в vCard — это делает сам сотрудник за минуту.
Запускайте выгрузку календарей ближе к дню переключения или повторите её после: встречи, созданные между выгрузкой и переключением, иначе останутся только в старом календаре.
Подводные камни
| Ситуация | Что происходит | Как поступить |
|---|---|---|
| Контакты не в группе «Телефонные контакты» | не попадают в выгрузку по CardDAV | выгрузить через «Экспорт контактов» в vCard |
| Календарь чужой, доступ только на чтение | iCal недоступен, только CalDAV | выгружает владелец или CalDAV с правами сотрудника |
| Повторяющиеся события | переносятся как одно событие с правилом повтора | проверить пару серий после импорта |
| Приглашения и участники | список участников переносится как данные события, но ответы участников со временем не синхронизируются | после переезда важные встречи переподтвердить |
| Часовые пояса | событие может сдвинуться, если зона не указана | проверить несколько событий, особенно созданных на телефонах |
| Дни рождения | в некоторых клиентах хранятся отдельно | проверить на тестовом ящике |
| Дубли на телефоне | два аккаунта синхронизации (старый и новый) | после переезда удалить старый аккаунт CalDAV/CardDAV |
Главное правило — не переносить контакты и календари одновременно несколькими способами. Если сначала импортировали файл, а потом ещё и синхронизировали телефон со старым сервером, получатся дубли, которые придётся чистить вручную.
Нужно ли переносить прошедшие события
Календарь за несколько лет — это тысячи событий, большинство из которых уже не нужны в работе. Переносить ли прошлое — решение компании: иногда история встреч нужна для отчётности или споров с клиентами, иногда достаточно будущих событий и последних нескольких месяцев.
Если историю решено не переносить целиком, сохраните полную выгрузку iCal каждого календаря в архив: файлы .ics занимают немного места и открываются любым календарным приложением. А на новый сервер загрузите только будущие события и, например, последние три месяца.
Для контактов такой вопрос обычно не стоит: адресные книги небольшие, переносятся целиком.
Сколько времени это занимает
Вручную: у сотрудника с одним календарём и личной адресной книгой экспорт и импорт занимают 10–15 минут вместе с проверкой. Централизованно скриптом: время уходит в основном на подготовку паролей приложений и список общих календарей, сама выгрузка и загрузка — минуты на сотрудника.
Самое долгое — общие календари и ресурсы: список, права, проверка бронирования. Закладывайте на них отдельное время в плане переезда.
Общие календари и переговорные
Общие календари отделов и календари ресурсов (переговорные, автомобили) — самая хлопотная часть. Права доступа к ним не переносятся вместе с событиями: на новом сервере календарь создаётся, события загружаются, а права выдаются заново по списку.
Составьте список таких календарей заранее: владелец, кто имеет доступ и с какими правами. Выгрузить события лучше от имени владельца — у него есть доступ к экспорту iCal.
На новом сервере проверьте, как он работает с ресурсами: в одних системах переговорная — отдельный тип календаря с автоматическим принятием приглашений, в других — обычный общий календарь. Если сотрудники бронировали переговорные через приглашения, это стоит протестировать до переключения. О том, как такие вещи устроены в Zimbra, — в статье «Zimbra: двойная бронь переговорной».
И ещё один практический совет: в день переключения попросите владельцев общих календарей не создавать новые события в старом календаре. Иначе их придётся переносить вторым проходом, а коллеги, уже работающие в новом календаре, их не увидят.
Телефоны сотрудников после переноса
Если на телефоне были настроены учётные записи CalDAV и CardDAV Яндекса, после переноса на новом сервере появятся те же события и контакты — и телефон покажет их дважды, из старого и нового аккаунта. Поэтому порядок такой: добавить новую учётную запись, убедиться, что события и контакты пришли, и удалить старую.
Учтите, что контакты, сохранённые в памяти телефона, а не в учётной записи CardDAV, с сервером не синхронизируются. Это частая причина жалоб «пропали контакты»: они никогда не были на сервере. Перед переездом попросите сотрудников проверить, где хранятся их важные контакты.
Для iOS по справке Яндекса может понадобиться указать адрес учётной записи CalDAV вручную в формате https://caldav.yandex.ru/principals/users/логин@домен/; для нового сервера адрес берётся из его документации.
Если сотрудники работают в Outlook
Outlook исторически хранит календарь и контакты в своём файле данных и синхронизирует их с сервером только по поддерживаемым протоколам. Если в компании Outlook подключён к Яндексу по IMAP, календарь и контакты в нём, скорее всего, локальные — их нет на сервере Яндекса, и выгрузка по CalDAV и CardDAV их не увидит.
Поэтому у пользователей Outlook проверьте, где на самом деле живёт календарь: в учётной записи сервера или в локальном файле. Локальный календарь экспортируется из самого Outlook в файл и импортируется на новом сервере либо остаётся локальным — тогда при смене компьютера он потеряется.
На новом сервере заранее проверьте, как Outlook будет работать с календарями: через CalDAV-надстройку, через встроенную поддержку сервера или через синхронизацию ActiveSync, если она есть. О том, что бывает с календарями SOGo в новом Outlook, — в нашей статье «Новый Outlook и SOGo».
Как проверить, что перенесено всё
Сравните количество: число контактов в адресной книге до и после, число событий в каждом календаре за ближайшие месяцы. На стенде мы сверяли это теми же запросами REPORT на старом и новом сервере — числа совпали.
Выборочно проверьте сложные случаи: повторяющиеся встречи, события с участниками, события в другом часовом поясе, контакты с несколькими телефонами и адресами.
И попросите двух-трёх сотрудников, которые активнее всех пользуются календарём, посмотреть свою неделю в новом интерфейсе до общего переключения.
Результаты сверки запишите в простую таблицу по сотрудникам: сколько было, сколько стало, кто проверил. Она пригодится, если через месяц кто-то скажет, что встреча пропала, — будет видно, было ли событие на момент переноса.
Чек-лист переноса контактов и календарей
Пройдите по пунктам для каждого сотрудника или централизованно.
- личные контакты выгружены в vCard
- календари выгружены владельцами в iCal или подготовлен доступ по CalDAV
- составлен список общих календарей и ресурсов с правами доступа
- на новом сервере созданы календари и адресные книги
- события и контакты загружены одним способом, без повторов
- число событий и контактов совпадает
- проверены повторяющиеся встречи и часовые пояса
- права на общие календари выданы заново
- на телефонах добавлены новые учётные записи, старые удалены
Частые вопросы
Какой адрес CalDAV у Яндекс Календаря?
По справке Яндекс 360 — https://caldav.yandex.ru, логин в формате имя@домен, пароль — пароль приложения с типом «Календарь».
Какой адрес CardDAV у Яндекса?
carddav.yandex.ru; для синхронизации нужен пароль приложения типа «Контакты», а контакты — в группе «Телефонные контакты».
Как экспортировать контакты из Яндекс Почты?
В разделе «Контакты» нажать «Экспорт контактов» и «Сохранить» — личные контакты сохранятся в файл vCard.
Как экспортировать Яндекс Календарь?
Владелец календаря открывает его настройки, вкладку «Экспорт» и выбирает iCal; ссылку можно сохранить как файл .ics.
Переносит ли imapsync календари и контакты?
Нет, только письма и папки по IMAP. Календари и контакты переносятся отдельно.
Почему после переезда задвоились события на телефоне?
На телефоне остались обе учётные записи — старая и новая. Старую учётную запись CalDAV/CardDAV нужно удалить.
Переносятся ли права на общие календари?
Нет. События переносятся, а права доступа выдаются на новом сервере заново по списку.
Миграция почты с Яндекса под ключ от АйТи Фреш
Возьмём на себя весь переезд: проверим текущую почту и домен, поможем выбрать вариант, перенесём письма, папки, календари и контакты, переключим MX, SPF, DKIM и DMARC, проверим доставляемость и поддержим сотрудников после переезда.
Куда переносим: в облако на российской площадке, на ваш собственный сервер, в гибридную схему или как резервный контур рядом с текущей почтой.
- Аудит текущей почты и домена — 1–2 рабочих дня
- План миграции и фиксированная смета — 1 рабочий день
- Настройка сервера, DNS и перенос ящиков — 3–5 рабочих дней
- Сопровождение сотрудников и проверка доставляемости — 5 рабочих дней
| Работа | Стоимость |
|---|---|
| Перенос почты, календарей и контактов до 50 ящиков | от 12 000 ₽ разово |
| Корпоративная почта под ключ: сервер, домен, SPF/DKIM/DMARC, до 15 ящиков | от 25 000 ₽ разово |
| Ящики на нашей инфраструктуре (Carbonio CE или mailcow, ЦОД МТС) | от 150 ₽/мес за ящик |
| Обслуживание почтового сервера | от 7 000 ₽/мес |
Опыт: перенесли 617 ящиков гостиничной группы за 3 дня. Точный срок и смету фиксируем после аудита; простой при переключении зависит от схемы и оговаривается в договоре. Подробнее — на странице услуги «Корпоративная почта для бизнеса».

























