Проект

Общее

Профиль

SOGo миграция данных

Миграция данных выполняется с помощью двух скриптов - imapsync.sh и calendar-sync.
imapsync.sh - выполняет синхронизацию почтовых сообщений через imap (обертка над imapsync).
calendar-sync - выполняет перенос записей из календарей и адресных книг пользователя в SOGo.
Приложенные файлы из элементов календарей экспортируются в NextCloud, ссылки вставляются в тело элемента.

Миграция почтовых сообщений

Необходимо установить пакет imapsync и создать скрипт обертку imapsync.sh (во вложении), заменив в нем учетные данные.
Далее:
  1. Создать файл со списком пользователей для миграции. Для примера /etc/imapsync/userlist.txt. В файле должны быть перечислены пользователи для миграции по одному логину на строку.
  2. Запустить скрипт imapsync.sh /etc/imapsync/userlist.txt
  3. По окончании работы скрипта проверить результаты в /var/log/imapsync_batch/batch.log

Установка calendar-sync

Скрипт предоставляется в виде python wheel пакета.

Для установки необходимо установить пакет python3-module-pip и выполнить pip3 install ПУТЬ ДО *.whl файла

Описание конфигурации для calendar-sync:

Конфигурация поделена на 3 части: доступ к SOGo, доступ к Exchage, доступ к NextCloud.

---
sogo:
  url: https://alp.72to.ru/SOGo
  auth:
    login: alp
    password: Passsword
exchange:
  server: 10.142.170.5
  verify_ssl: false
  timezone: Asia/Yekaterinburg
  auth:
    login: adm72\alp
    password: Passsword
attachment_handler:
  url: https://cloud.72to.ru
  folder: attachments
  auth:
    login: igolubkov
    password: Passsword

Пример запуска

Для одного пользователя: calendar-sync --config config.yaml syncOne alp@tst.72to.ru
Для списка пользователей: calendar-sync --config config.yaml syncList --domain tst.72to.ru user_list.txt, где user_list.txt - список учетных записей пользователей для миграции (если указана опция domain) или список email адресов пользователей.

Ответы на вопросы

  • "заместители" по типу Outlook (пересылка, частные встречи)

"Заместитель" может быть назначен с помощью предоставления прав на папки почтового ящика и на необходимые календари.

  • централизованная настройка переадресации

Настраивается в postfix. Для примера добавил соответствие в виде файла.
В параметре virtual_alias_maps указываются списки псевдонимов для адресов.
В /etc/postfix/redirect есть запись вида - для адреса перенаправить почту в (т.е. доставить как обычно) и (переслать).

  • отправка пользователем запроса на доступа к календарю/ящику

Данного функционала нет.

  • адресные листы (группировка пользователей по определенному признаку)

Адресные книги формируются из ldap. Можно отбирать любым ldap запросом. Настраиваются в /etc/sogo/sogo.conf, в разделе SOGoUserSources. Подробности в документации.

  • Не удается подключить доп. ящик SOGo (пользователь на Exchange)

Можно дать права пользователю в SOGo и подключить его ящик как второй, параллельно с Exchange.

  • Не отображаются доп. ящики Exchange в SOGo. То же самое с календарями

Можно подключить ящик, к которому дали права, через imap. Нужно использовать специальное имя пользователя при подключении к Exchange: <ДОМЕН>\<ПОЛЬЗОВАТЕЛЬ SOGO>\<ПОЛЬЗОВАТЕЛЬ EXCHANGE>

  • Не отображается адресная книга в Outlook при подключении к SOGo

Можно настроить отображение персональной адресной книги через плагин. Общие адресные книги от SOGo не подключаются, т.к. не выводят список, а работают только на поиск.

  • в Thunderbird адреска работает только в режиме поиска (списка нет)

Ограничение SOGo - не позволяет выводить список для адресных книг из ldap в WebDav.

  • Календари в Thunderbird все так же в одной куче
  • Из Thunderbird нельзя открыть доступ к ящику другим пользователям (только через веб)

Можно с помощью плагина, но не так удобно.

  • почта каждого пользователя хранится в отдельном файле, про разделение баз между серверами можно забыть, т.к. почтовых баз нет.

Почта пользователя хранится в нескольких файлах (ограничение по размеру одного файла, подробнее multi-dbox). Разделять пользователей между серверами можно с помощью Director, отдавая список серверов, например, из атрибута в AD.

  • штатными средствами восстановление писем пользователей невозможно, т.к. в данной ситуации оптимальное - хранить почту на локальной машине.

так же из этого вытекает - или большое хранилище (1.5 Тb на текущий момент), или можно забыть про доступность почты из любого места.
Есть плагин Lazyexpunge, позволяющий складывать удаленные сообщения в отдельный namespace.

imapsync.sh Просмотреть (1,16 КБ) Альп Альп, 20.10.2017 10:14

Экспортировать в PDF HTML TXT