Z-Push позволяет совместимым мобильным устройствам синхронизироваться с Kopano Core через Microsoft Exchange ActiveSync. Надежная настройка зависит от согласования бэкэнда Z-Push с сервером Kopano, публикации конечной точки ActiveSync по протоколу HTTPS и сохранения состояния Z-Push во время обновлений. Правильная конфигурация также зависит от того, нужна ли вам простейшая односерверная конфигурация или отдельные службы и многохостовая мощность.
Выберите конфигурацию, подходящую для вашей среды.
Z-Push — это сервер синхронизации ActiveSync с открытым исходным кодом. Он выступает в качестве протокольного уровня между совместимым устройством и серверной частью группового программного обеспечения; устройство обычно добавляет учетную запись Exchange или ActiveSync, а не подключается напрямую к Kopano. Z-Push может синхронизировать электронную почту, контакты, элементы календаря и задачи, если выбранная серверная часть и мобильный клиент поддерживают эти типы данных. Kopano описывает эту взаимосвязь в своей документации для администратора Kopano Core .
| Выбор | Лучший вариант | Компромисс при планировании |
| бэкенд Kopano | Kopano Core — это база данных почты, контактов и календарей. | Требуется бэкенд Kopano и совместимые компоненты PHP-MAPI; необходимо обеспечить согласованность поддерживаемых версий. |
| Отдельные бэкэнды IMAP, CalDAV или CardDAV | Данные электронной почты и группового программного обеспечения хранятся в разных сервисах. | Больше конечных точек и возможностей настройки; функции и поведение папок зависят от каждой серверной части. |
| Дистрибьюторские пакеты | Стандартное развертывание Linux, управляемое операционной системой. | Версии и пути к пакетам зависят от репозиториев дистрибутива и совместимости с Kopano. |
| Развертывание исходного или пользовательского контейнера | Команде необходимы пользовательские макеты, привязка релизов или работа с контейнерами. | Вы отвечаете за управление зависимостями, сохранение состояния, веб-маршрутизацию, обновления и откат. |
| Один хост | Небольшая установка с одним подключением Z-Push. | Более простая структура данных и сетевой путь, но хост представляет собой единую точку обслуживания. |
| Несколько хостов Z-Push | Высокая доступность или масштабируемое развертывание | Требуется подходящая архитектура с общим или поддерживаемым базой данных состоянием; локальное состояние может привести к непоследовательности запросов. |
Для существующего сервера Kopano Core бэкэнд Kopano является естественной отправной точкой. Выбирайте IMAP плюс CalDAV/CardDAV только в том случае, если эти системы действительно содержат необходимые данные, или если вы намеренно хотите использовать отдельные источники. Замена бэкэнда не является функционально нейтральной: поведение синхронизации, адресные книги, задачи, общие папки и совместимость могут отличаться.
Перед установкой или изменением конфигурации
- Запишите версии Kopano Core, Z-Push, PHP, веб-сервера и операционной системы. Проверьте поддерживаемые комбинации пакетов, которые вы планируете использовать; версия PHP, принимаемая только Z-Push, не гарантирует доступность расширения Kopano MAPI для неё.
- Выберите общедоступное имя хоста, которое будут использовать клиенты, например
sync.example.com, , и подготовьте доверенный TLS-сертификат для этого имени.
- Определите, будет ли Z-Push работать на хосте Kopano или на отдельном веб-сервере. Отдельный хост может изолировать веб-сервисы, но требует работающего сетевого доступа к Kopano и правильно настроенного адреса MAPI-сервера.
- Перед обновлением обязательно создайте резервную копию каталогов конфигурации и состояния Z-Push. Z-Push отслеживает синхронизацию устройств; в документации Kopano по обновлению указано, что необходимо сохранить состояние для существующих мобильных профилей.
- Перед регистрацией личных или корпоративных телефонов выберите типы данных, которые должен синхронизировать каждый пользователь, и ознакомьтесь с требованиями политики устройства.
Настройте серверную часть.
1. Установите соответствующий комплект Z-Push.
Используйте пакеты, созданные для вашего дистрибутива и версии Kopano, если они доступны. Типичная настройка на основе пакетов разделяет ядро Z-Push, бэкенд Kopano и интеграцию с веб-сервером. В руководстве администратора Kopano описаны такие пакеты, как и z-push-backend-kopanoпакеты конфигурации веб-сервера, но точные названия пакетов и доступность репозиториев зависят от дистрибутива, а руководство охватывает более старую версию документации ядра Kopano. Перед применением исторических команд подтвердите текущую поддержку пакета.
Установка из исходного кода и использование контейнеров обеспечивают больший контроль над версиями и структурой файловой системы. Они также перекладывают ответственность на оператора: необходимо обеспечить доступность расширений PHP для той же среды выполнения PHP, которая используется веб-сервером, сохранять состояние и журналы, а также поддерживать доступность маршрута ActiveSync после повторного развертывания.
2. Выберите бэкэнд Kopano и адрес сервера.
В основной конфигурации Z-Push укажите поставщика бэкенда на бэкенд Kopano, используя параметр и имя класса, указанные в документации для вашей установленной версии. Распространенный параметр в пакетированных развертываниях — это BackendKopano; не вставляйте параметр в конфигурационный файл с другой структурой, не проверив пример, поставляемый с вашим пакетом. В конфигурации бэкенда Kopano укажите адрес MAPI-сервера, если служба Kopano находится не на том же хосте или недоступна через локальное соединение по умолчанию.
// Example only: confirm the setting and file path in your installed package.
define('BACKEND_PROVIDER', 'BackendKopano');
Имена файлов и константы могут различаться в разных версиях. Не разглашайте секретную информацию в примерах общедоступной конфигурации, ограничьте права доступа к файлам конфигурации и убедитесь, что среда выполнения PHP, используемая Apache или PHP-FPM, может загрузить необходимое расширение Kopano MAPI. Здоровая среда выполнения PHP в командной строке не гарантирует, что среда выполнения PHP в веб-среде поддерживает те же расширения.
3. Опубликуйте конечную точку ActiveSync по протоколу HTTPS.
Клиентам необходим стабильный HTTPS-адрес для обработчика ActiveSync, обычно это имя хоста, за которым следует `<hostname>` /Microsoft-Server-ActiveSync. Настройте Apache, Nginx или выбранный обратный прокси-сервер для перенаправления этого пути к точке входа Z-Push. Сохраняйте каноническую конечную точку на том же имени хоста и избегайте перенаправлений, которые изменяют метод запроса или отправляют мобильный клиент на другой путь. В руководстве Kopano особо предупреждается о недопустимости переименования каталога Z-Push для создания конечной точки, поскольку перенаправление может нарушить синхронизацию устройств.
Используйте действительный сертификат, имя которого совпадает с именем хоста конечной точки. HTTPS защищает учетные данные и данные синхронизации при передаче, и многие современные мобильные клиенты отклоняют ненадежные или несоответствующие сертификаты. Не обходите предупреждения о сертификатах, отключая TLS в рабочих учетных записях. Если TLS завершается на обратном прокси-сервере, убедитесь, что прокси-сервер пересылает запросы и заголовки, связанные с аутентификацией, как положено, и что соединение от прокси-сервера к Z-Push соответствует вашей внутренней политике безопасности.
4. Установите состояние записи и места для записи в журнал.
Z-Push должен иметь возможность записывать свое состояние и файлы журналов. Предоставьте доступ конкретной учетной записи веб-сервера, например, www-dataво многих установках Debian и Ubuntu; учетная запись службы различается в зависимости от дистрибутива. Избегайте предоставления доступа к этим каталогам для записи всем пользователям. В многохостовой конфигурации выбирайте механизм управления состоянием, предназначенный для совместного доступа, а не предполагайте, что файлы на одном узле видны другому. В руководстве администратора Kopano объясняются разрешения для каталогов состояния и отмечается, что состояние должно сохраняться при обновлении Z-Push.
Настройте мобильный аккаунт
На телефоне добавьте рабочую учетную запись или учетную запись Exchange и выберите Exchange ActiveSync, Microsoft Exchange или аналогичный вариант, предлагаемый этим клиентом. Точные названия и экраны различаются в зависимости от операционной системы и почтового приложения. Введите адрес электронной почты пользователя и учетные данные. Если автоматическое обнаружение не находит сервер, введите имя хоста Z-Push и, если требуется, конечную точку ActiveSync. Используйте формат имени пользователя, ожидаемый вашей системой аутентификации Kopano; не следует предполагать, что полный адрес электронной почты и имя пользователя Kopano всегда совпадают.
Оставьте SSL/TLS включенным и принимайте политики устройства только после проверки того, что они разрешают, например, требование ввода пароля или применение управляемых организацией ограничений на использование устройства. Выберите категории для синхронизации: почта, контакты, календарь и задачи (если доступны). В устаревшем руководстве по использованию Kopano на мобильных устройствах описан общий рабочий процесс учетной записи Exchange, но скриншоты и обозначения операционных систем устарели. Следуйте подсказкам текущего телефона, а не копируйте старые пути меню дословно.
Если почтовое приложение поддерживает расписание синхронизации, push-уведомления или частые обновления обеспечивают более быструю доставку, но могут потреблять больше заряда батареи и трафика сети. Более длительные интервалы опроса уменьшают количество фоновых проверок, но задерживают доставку новых сообщений. Для рабочей учетной записи, где важна своевременная доставка почты, начните с настроек push-уведомлений в клиенте (если они поддерживаются), а затем отрегулируйте их в зависимости от расхода заряда батареи и политики организации.
Перед регистрацией новых устройств проверяйте каждый слой.
- Конечная точка: Откройте общедоступное имя хоста в браузере и убедитесь, что TLS-сертификат действителен. Ошибка браузера или предупреждение о сертификате должны быть устранены до добавления учетных записей.
- Маршрутизация веб-сайта: Убедитесь, что путь ActiveSync достигает обработчика Z-Push без циклов перенаправления или стандартной страницы ошибки 404 веб-сервера. Конечная точка представляет собой обработчик протокола, а не обычный веб-сайт.
- Аутентификация на стороне бэкэнда: используйте тестовую учетную запись и убедитесь, что в журналах Z-Push отображается успешное подключение к бэкэнду без раскрытия паролей или токенов.
- Первоначальная синхронизация: добавьте один тестовый телефон и проверьте выбранные папки почты, контакты, календарь и задачи. Успешный вход в систему не гарантирует корректную синхронизацию всех типов данных.
- Двусторонние изменения: создайте тестовое событие календаря на телефоне и убедитесь, что оно отображается в Kopano; затем внесите тестовое изменение в Kopano и убедитесь, что оно достигнет телефона.
- Перезапуск и восстановление: Перезапустите веб-службу в течение запланированного тестового периода, проверьте восстановление синхронизации и убедитесь, что каталог состояния остался нетронутым.
Устранение неполадок по симптомам
| Симптом | Сначала проверьте |
| Телефон не может проверить сервер или не может войти в систему. | Имя хоста, цепочка TLS-сертификатов, конечная точка HTTPS и любые перенаправления прокси-сервера. |
| Учетные данные отклонены | Формат имени пользователя, аутентификация Kopano, бэкэнд-провайдер, доступность PHP-MAPI и журналы веб-сервера. |
| Почта синхронизируется, но календарь и контакты — нет. | Поддержка функций бэкэнда, синхронизация с выбранными категориями телефонов и сопоставление папок. |
| Синхронизация срабатывает один раз, затем дублируется или сбрасывается. | Было ли состояние удалено, перемещено или несогласовано на разных хостах во время изменения или обновления? |
| Вышло из строя только одно устройство. | Совместимость устройства, запрос политики учетной записи, устаревший профиль и журналы для каждого устройства; перед сбросом данных протестируйте на другом клиенте. |
| Все устройства выходят из строя после обновления PHP или операционной системы. | Загрузка расширений PHP-FPM/Apache, совместимость пакетов, журналы служб и последние изменения конфигурации. |
Используйте собственные логи Z-Push и логи веб-сервера/PHP вместе, сопоставив их по одной и той же метке времени. Если вам нужно протестировать новый профиль устройства, сначала убедитесь, что сброс состояния на стороне сервера подходит для вашей версии, и выясните, вызовет ли это полную синхронизацию. Не удаляйте весь каталог состояния в качестве первого шага по устранению неполадок.
Какую конфигурацию следует выбрать?
Для небольшой существующей установки Kopano Core обычно требуется набор пакетов Z-Push, поддерживаемый дистрибутивом, бэкенд Kopano, одна конечная точка HTTPS и тщательно настроенное локальное состояние, что позволяет минимизировать количество движущихся частей. Используйте отдельный хост, если изоляция или операционные ограничения оправдывают дополнительные сетевые работы и работу по обеспечению совместимости PHP-MAPI. Используйте многохостовую архитектуру только после выбора и тестирования подхода с общим состоянием. Если почта, календари или контакты хранятся вне Kopano, сравните соответствующие бэкенды Z-Push перед развертыванием и протестируйте каждый тип данных на реальных мобильных клиентах, которыми пользуются ваши пользователи.
В разных версиях Z-Push и Kopano происходят изменения в упаковке, поддержке PHP и поведении устройств. Относитесь к примерам конфигурации установленного пакета и соответствующей документации к релизу как к авторитетным источникам; старые руководства Kopano полезны для понимания концепций, но их не следует слепо копировать в более новую систему. Репозиторий проекта Z-Push является источником актуального кода проекта и информации о релизах.