Z-Push permet aux appareils mobiles compatibles de se synchroniser avec Kopano Core via Microsoft Exchange ActiveSync. Une configuration fiable repose sur la correspondance entre le serveur Z-Push et le serveur Kopano, la publication du point de terminaison ActiveSync via HTTPS et la préservation de l'état de Z-Push lors des mises à jour. La configuration optimale dépend également du type de déploiement souhaité : une solution simple sur un seul serveur ou des services distincts et une capacité multi-hôtes.
Choisissez la configuration qui convient à votre environnement
Z-Push est un serveur de synchronisation ActiveSync open source. Il sert d'interface entre un appareil compatible et un système de travail collaboratif ; l'appareil ajoute généralement un compte Exchange ou ActiveSync plutôt que de se connecter directement à Kopano. Z-Push peut synchroniser les e-mails, les contacts, les éléments du calendrier et les tâches lorsque le système et l'application mobile utilisés prennent en charge ces types de données. Kopano décrit cette relation dans sa documentation d'administration de Kopano Core .
| Choix | Meilleure adaptation | Compromis pour planifier |
| backend de Kopano | Kopano Core est la source des courriels, des contacts et des calendriers. | Nécessite le backend Kopano et les composants PHP-MAPI compatibles ; assurez-vous que leurs versions prises en charge restent compatibles. |
| Serveurs IMAP, CalDAV ou CardDAV distincts | Les données de messagerie et de travail collaboratif résident sur des services différents | Davantage de points de terminaison et de configuration ; les fonctionnalités et le comportement des dossiers dépendent de chaque serveur dorsal. |
| Paquets de distribution | Un déploiement Linux standard géré par le système d'exploitation | Les versions et les chemins des paquets dépendent des dépôts de distribution et de la compatibilité avec Kopano. |
| Déploiement de conteneur source ou personnalisé | Une équipe a besoin de mises en page personnalisées, d'un épinglage de versions ou d'opérations de conteneur. | Vous êtes responsable de la gestion des dépendances, de la persistance de l'état, du routage web, des mises à jour et de la restauration. |
| Un hôte | Petite installation avec un seul service Z-Push | État et chemin réseau plus simples, mais l'hôte est un point de service unique |
| Plusieurs hôtes Z-Push | Déploiement à haute disponibilité ou à grande échelle | Nécessite une conception d'état partagée ou basée sur une base de données appropriée ; un état uniquement local peut rendre les requêtes incohérentes. |
Pour un serveur Kopano Core existant, le backend Kopano est le point de départ naturel. Choisissez IMAP et CalDAV/CardDAV uniquement si ces systèmes contiennent réellement les données pertinentes, ou si vous souhaitez volontairement des sources distinctes. Le remplacement du backend n'est pas sans incidence sur les fonctionnalités : le comportement de synchronisation, les carnets d'adresses, les tâches, les dossiers publics et la compatibilité peuvent varier.
Avant d'installer ou de modifier la configuration
- Notez les versions de Kopano Core, Z-Push, PHP, de votre serveur web et de votre système d'exploitation. Vérifiez les combinaisons compatibles avec les packages que vous prévoyez d'utiliser ; la version de PHP acceptée par Z-Push ne garantit pas à elle seule la disponibilité de l'extension Kopano MAPI.
- Choisissez le nom d'hôte public que les clients utiliseront, tel que
sync.example.com, et préparez un certificat TLS de confiance pour ce nom.
- Choisissez si Z-Push doit être exécuté sur le serveur Kopano ou sur un serveur web distinct. Un serveur distinct permet d'isoler les services exposés sur le web, mais nécessite un accès réseau fonctionnel à Kopano et une adresse de serveur MAPI correctement configurée.
- Avant toute mise à niveau, sauvegardez la configuration et l'état de Z-Push. L'état de Z-Push assure la synchronisation des appareils ; la documentation de Kopano relative aux mises à niveau recommande de conserver l'état des profils mobiles existants.
- Choisissez les types de données que chaque utilisateur doit synchroniser et examinez les exigences de la politique relative aux appareils avant d'inscrire des téléphones personnels ou professionnels.
Configurer le côté serveur
1. Installez un ensemble Z-Push correspondant
Utilisez les paquets conçus pour votre distribution et votre version de Kopano lorsqu'ils sont disponibles. Une configuration classique basée sur des paquets sépare le noyau Z-Push, le backend Kopano et l'intégration au serveur web. Le manuel d'administration de Kopano décrit des paquets tels que z-push-backend-kopanoceux de configuration du serveur web, mais leurs noms exacts et leur disponibilité dans les dépôts dépendent de la distribution. De plus, ce manuel concerne une ancienne version de la documentation du noyau Kopano. Vérifiez la compatibilité des paquets avec la version actuelle avant d'appliquer leurs anciennes commandes.
L'installation à partir des sources et les conteneurs offrent un meilleur contrôle sur les versions et l'organisation du système de fichiers. Ils transfèrent également la responsabilité à l'opérateur : vous devez rendre les extensions PHP accessibles au même environnement d'exécution PHP que celui utilisé par le serveur web, conserver l'état et les journaux, et maintenir l'accessibilité de la route ActiveSync après les redéploiements.
2. Sélectionnez le backend Kopano et l'adresse du serveur
Dans la configuration principale de Z-Push, définissez le fournisseur backend sur le backend Kopano en utilisant le paramètre et le nom de classe documentés pour votre version installée. Un paramètre courant dans les déploiements packagés estBackendKopano ; ne copiez pas un paramètre dans un fichier de configuration structuré différemment sans consulter l'exemple fourni avec votre package. Dans la configuration du backend Kopano, définissez l'adresse du serveur MAPI si le service Kopano n'est pas sur le même hôte ou n'est pas accessible via la connexion locale par défaut.
// Example only: confirm the setting and file path in your installed package.
define('BACKEND_PROVIDER', 'BackendKopano');
Les noms de fichiers et les constantes peuvent varier d'une version à l'autre. Évitez de divulguer des informations confidentielles dans les exemples de configuration publics, limitez les permissions des fichiers de configuration et vérifiez que l'environnement d'exécution PHP utilisé par Apache ou PHP-FPM peut charger l'extension Kopano MAPI requise. Un environnement PHP en ligne de commande fonctionnel ne garantit pas que l'environnement d'exécution PHP web dispose des mêmes extensions activées.
3. Publier le point de terminaison ActiveSync via HTTPS
Les clients ont besoin d'une URL HTTPS stable pour le gestionnaire ActiveSync, généralement le nom d'hôte suivi de `/etc/activeSync` /Microsoft-Server-ActiveSync. Configurez Apache, Nginx ou le proxy inverse choisi pour acheminer ce chemin vers le point d'entrée de Z-Push. Conservez le point de terminaison canonique sur le même nom d'hôte et évitez les redirections qui modifient la méthode de requête ou qui envoient un client mobile vers un autre chemin. Le guide Kopano déconseille formellement de renommer le répertoire Z-Push pour créer le point de terminaison, car une redirection peut interrompre la synchronisation des appareils.
Utilisez un certificat valide dont le nom correspond au nom d'hôte du point de terminaison. Le protocole HTTPS protège les informations d'identification et les données de synchronisation lors de leur transmission, et de nombreux clients mobiles actuels rejettent les certificats non approuvés ou incompatibles. Ne contournez pas les avertissements relatifs aux certificats en désactivant TLS sur les comptes de production. Si la connexion TLS est terminée par un proxy inverse, vérifiez que ce dernier transfère correctement les requêtes et les en-têtes d'authentification et que la connexion entre le proxy et Z-Push respecte votre politique de sécurité interne.
4. Définir les emplacements d'écriture et de journalisation
Z-Push doit pouvoir écrire son état et ses journaux. Accordez l'accès au compte du serveur web spécifique, comme www-datasur de nombreuses installations Debian et Ubuntu ; le compte de service varie selon la distribution. Évitez de rendre ces répertoires accessibles en écriture à tous. Dans un déploiement multi-hôtes, choisissez un mécanisme d'état conçu pour un accès partagé plutôt que de supposer que les fichiers d'un nœud sont visibles par les autres. Le guide de l'administrateur Kopano explique les permissions des répertoires d'état et indique que l'état doit être conservé lors de la mise à niveau de Z-Push.
Configurer le compte mobile
Sur votre téléphone, ajoutez un compte professionnel ou Exchange et sélectionnez Exchange ActiveSync, Microsoft Exchange ou l'option équivalente proposée par votre application de messagerie. L'interface et les informations d'identification varient selon le système d'exploitation et l'application de messagerie. Saisissez l'adresse e-mail et les identifiants de l'utilisateur. Si la détection automatique ne trouve pas le serveur, saisissez le nom d'hôte Z-Push et, le cas échéant, le point de terminaison ActiveSync. Utilisez le format de nom d'utilisateur attendu par votre configuration d'authentification Kopano ; l'adresse e-mail complète et le nom d'utilisateur Kopano ne sont pas toujours identiques.
Laissez le protocole SSL/TLS activé et n'acceptez les stratégies de l'appareil qu'après avoir vérifié leurs autorisations, comme l'exigence d'un code d'accès ou l'application de contrôles d'accès gérés par l'organisation. Sélectionnez les catégories à synchroniser : courrier, contacts, calendrier et tâches, le cas échéant. L'ancien guide pour appareils mobiles Kopano décrit le fonctionnement général d'un compte Exchange, mais les captures d'écran et les libellés relatifs au système d'exploitation sont obsolètes. Suivez les instructions de votre téléphone actuel plutôt que de copier littéralement les anciens chemins d'accès aux menus.
Si votre application de messagerie propose des planifications de synchronisation, les mises à jour fréquentes (ou push) accélèrent la réception des messages, mais peuvent consommer davantage de batterie et de bande passante. Des intervalles d'interrogation plus longs réduisent les vérifications en arrière-plan, mais retardent l'arrivée des nouveaux messages. Pour un compte professionnel où la réception rapide des e-mails est essentielle, commencez par activer les mises à jour fréquentes si elles sont disponibles, puis ajustez-les en fonction de l'autonomie de la batterie et des règles de votre entreprise.
Vérifiez chaque couche avant d'inscrire d'autres appareils
- Point de terminaison : Ouvrez le nom d’hôte public dans un navigateur et vérifiez la validité du certificat TLS. Toute erreur de navigateur ou tout avertissement relatif au certificat doit être corrigé avant l’ajout de comptes.
- Routage Web : vérifiez que le chemin ActiveSync atteint bien le gestionnaire Z-Push sans boucle de redirection ni page d’erreur 404 générique du serveur Web. Le point de terminaison est un gestionnaire de protocole, et non un site Web classique.
- Authentification du serveur : Utilisez un compte de test et vérifiez que les journaux Z-Push indiquent une connexion réussie au serveur sans exposer de mots de passe ni de jetons.
- Synchronisation initiale : ajoutez un téléphone de test et vérifiez les dossiers de messagerie, les contacts, le calendrier et les tâches sélectionnés. Une connexion réussie ne garantit pas que toutes les données sont correctement synchronisées.
- Modifications bidirectionnelles : Créez un événement de test dans le calendrier du téléphone et vérifiez qu’il apparaît dans Kopano ; puis effectuez une modification de test dans Kopano et vérifiez qu’elle est bien prise en compte par le téléphone.
- Redémarrage et restauration : redémarrez le service Web pendant une fenêtre de test planifiée, vérifiez que la synchronisation est rétablie et confirmez que le répertoire d’état reste intact.
Dépannage par symptôme
| Symptôme | Vérifiez d'abord |
| Impossible de vérifier le serveur avec le téléphone ou échec avant la connexion. | Nom d'hôte, chaîne de certificats TLS, point de terminaison HTTPS et redirections de proxy éventuelles |
| Les informations d'identification sont refusées | Format du nom d'utilisateur, authentification Kopano, fournisseur backend, disponibilité de PHP-MAPI et journaux du serveur web |
| La synchronisation des e-mails fonctionne, mais pas celle du calendrier ni des contacts. | Prise en charge des fonctionnalités backend, catégories de synchronisation téléphonique sélectionnées et mappage des dossiers |
| La synchronisation fonctionne une seule fois, puis se duplique ou se réinitialise. | Que l'état ait été supprimé, déplacé ou soit incohérent entre les hôtes lors d'une modification ou d'une mise à niveau |
| Un seul appareil tombe en panne. | Compatibilité des appareils, invite de politique de compte, profil obsolète et journaux par appareil ; testez un autre client avant de réinitialiser les données |
| Tous les appareils tombent en panne après une mise à jour PHP ou du système d'exploitation. | Chargement de l'extension PHP-FPM/Apache, compatibilité des paquets, journaux de service et modifications de configuration récentes |
Utilisez conjointement les journaux de Z-Push et ceux du serveur web/PHP, en les synchronisant avec le même horodatage. Si vous devez tester un nouveau profil d'appareil, vérifiez d'abord qu'une réinitialisation de l'état côté serveur est appropriée pour votre version et assurez-vous qu'elle n'entraînera pas une resynchronisation complète. Ne supprimez pas l'intégralité du répertoire d'état lors de votre première tentative de dépannage.
Quelle configuration choisir ?
Pour une petite installation Kopano Core existante, un ensemble de paquets Z-Push pris en charge par la distribution, le backend Kopano, un point de terminaison HTTPS et un état local soigneusement géré minimisent généralement les éléments à gérer. Utilisez un hôte distinct lorsque l'isolation ou les limites opérationnelles justifient le travail supplémentaire de compatibilité réseau et PHP-MAPI. N'optez pour une architecture multi-hôtes qu'après avoir sélectionné et testé une approche d'état partagé. Si les e-mails, les calendriers ou les contacts sont hébergés en dehors de Kopano, comparez les backends Z-Push pertinents avant le déploiement et testez chaque type de données sur les applications mobiles utilisées par vos utilisateurs.
Le packaging Z-Push et Kopano, la prise en charge de PHP et le comportement des périphériques évoluent d'une version à l'autre. La configuration d'exemple du package installé et la documentation correspondante font foi ; les anciens manuels Kopano sont utiles pour comprendre les concepts, mais ne doivent pas être copiés tels quels dans un système plus récent. Le dépôt du projet Z-Push contient le code source actuel et les informations relatives aux versions.