Z-Push umożliwia synchronizację kompatybilnych urządzeń mobilnych z Kopano Core za pośrednictwem Microsoft Exchange ActiveSync. Niezawodna konfiguracja zależy od dopasowania zaplecza Z-Push do serwera Kopano, publikowania punktu końcowego ActiveSync przez HTTPS oraz zachowania stanu Z-Push podczas aktualizacji. Prawidłowa konfiguracja zależy również od tego, czy preferujesz najprostsze wdrożenie na jednym serwerze, czy potrzebujesz oddzielnych usług i możliwości obsługi wielu hostów.
Wybierz konfigurację, która pasuje do Twojego środowiska
Z-Push to serwer synchronizacji ActiveSync o otwartym kodzie źródłowym. Działa jako warstwa protokołu między kompatybilnym urządzeniem a zapleczem oprogramowania grupowego; urządzenie zazwyczaj dodaje konto Exchange lub ActiveSync zamiast łączyć się bezpośrednio z Kopano. Z-Push może synchronizować pocztę e-mail, kontakty, wpisy kalendarza i zadania, jeśli wybrane zaplecze i klient mobilny obsługują te typy danych. Kopano opisuje tę relację w dokumentacji administratora Kopano Core .
| Wybór | Najlepiej pasuje | Kompromis w planowaniu |
| Kopano backend | Kopano Core to źródło poczty, kontaktów i kalendarzy | Wymaga zaplecza Kopano i zgodnych komponentów PHP-MAPI; należy zachować zgodność obsługiwanych wersji |
| Oddzielne zaplecza IMAP, CalDAV lub CardDAV | Dane poczty i oprogramowania grupowego znajdują się w różnych usługach | Więcej punktów końcowych i konfiguracji; funkcje i zachowanie folderów zależą od każdego zaplecza |
| Pakiety dystrybucyjne | Standardowe wdrożenie systemu Linux zarządzane przez system operacyjny | Wersje i ścieżki pakietów zależą od repozytoriów dystrybucyjnych i kompatybilności z Kopano |
| Wdrożenie kontenera źródłowego lub niestandardowego | Zespół potrzebuje niestandardowych układów, przypinania wersji lub operacji kontenerowych | Posiadasz uprawnienia do zarządzania zależnościami, trwałością stanu, routingiem internetowym, aktualizacjami i wycofywaniem zmian |
| Jeden gospodarz | Mała instalacja z jedną usługą Z-Push | Prostszy stan i ścieżka sieciowa, ale host jest pojedynczym punktem usługi |
| Wiele hostów Z-Push | Wysoka dostępność lub skalowalne wdrożenie | Wymaga odpowiedniego projektu stanu współdzielonego lub opartego na bazie danych; stan lokalny może powodować niespójność żądań |
W przypadku istniejącego serwera Kopano Core, zaplecze Kopano stanowi naturalny punkt wyjścia. Wybierz IMAP i CalDAV/CardDAV tylko wtedy, gdy te systemy faktycznie przechowują odpowiednie dane lub gdy celowo potrzebujesz oddzielnych źródeł. Zamienniki zaplecza nie są neutralne pod względem funkcji: zachowanie synchronizacji, książki adresowe, zadania, foldery publiczne i kompatybilność mogą się różnić.
Przed instalacją lub zmianą konfiguracji
- Zapisz wersje Kopano Core, Z-Push, PHP, serwera WWW i systemu operacyjnego. Sprawdź obsługiwane kombinacje pakietów, których planujesz używać; sama wersja PHP akceptowana przez Z-Push nie gwarantuje, że rozszerzenie Kopano MAPI jest dla niej dostępne.
- Wybierz publiczną nazwę hosta, której będą używać klienci, na przykład
sync.example.com, i przygotuj zaufany certyfikat TLS dla tej nazwy.
- Zdecyduj, czy Z-Push działa na hoście Kopano, czy na oddzielnym serwerze WWW. Oddzielny host może odizolować usługi internetowe, ale wymaga to sprawnego dostępu sieciowego do Kopano i poprawnie skonfigurowanego adresu serwera MAPI.
- Przed aktualizacją wykonaj kopię zapasową konfiguracji i katalogów stanu Z-Push. Stan Z-Push śledzi synchronizację urządzeń; udokumentowane wskazówki dotyczące aktualizacji Kopano zalecają zachowanie stanu istniejących profili mobilnych.
- Wybierz typy danych, które każdy użytkownik powinien synchronizować, i zapoznaj się z wymaganiami polityki dotyczącej urządzeń przed zarejestrowaniem telefonów osobistych lub służbowych.
Skonfiguruj stronę serwera
1. Zainstaluj pasujący zestaw pakietów Z-Push
Używaj pakietów stworzonych dla Twojej dystrybucji i wersji Kopano, gdy są dostępne. Typowa konfiguracja oparta na pakietach oddziela rdzeń Z-Push, zaplecze Kopano i integrację z serwerem WWW. Podręcznik administratora Kopano opisuje pakiety, takie jak z-push-backend-kopanopakiety konfiguracyjne serwera WWW, ale dokładne nazwy pakietów i dostępność repozytoriów zależą od dystrybucji, a podręcznik obejmuje starszą generację dokumentacji rdzenia Kopano. Przed zastosowaniem historycznych poleceń sprawdź obsługę bieżącego pakietu.
Instalacje źródłowe i kontenery zapewniają większą kontrolę nad wersjami i układem systemu plików. Przenoszą one również odpowiedzialność na operatora: musisz udostępnić rozszerzenia PHP temu samemu środowisku wykonawczemu PHP, z którego korzysta serwer WWW, zachować stan i logi oraz zapewnić dostępność trasy ActiveSync po ponownym wdrożeniu.
2. Wybierz zaplecze Kopano i adres serwera
W głównej konfiguracji Z-Push ustaw dostawcę zaplecza na zaplecze Kopano, używając ustawienia i nazwy klasy udokumentowanej dla zainstalowanej wersji. Typowym ustawieniem we wdrożeniach pakietowych jest BackendKopano: nie wklejaj ustawienia do pliku konfiguracyjnego o innej strukturze bez sprawdzenia przykładu dołączonego do pakietu. W konfiguracji zaplecza Kopano ustaw adres serwera MAPI, gdy usługa Kopano nie znajduje się na tym samym hoście lub nie można się z nią połączyć za pomocą domyślnego połączenia lokalnego.
// Example only: confirm the setting and file path in your installed package.
define('BACKEND_PROVIDER', 'BackendKopano');
Nazwy plików i stałe mogą się różnić między wersjami pakietów. Unikaj poufnych informacji w publicznych przykładach konfiguracji, ogranicz uprawnienia do plików konfiguracyjnych i sprawdź, czy środowisko wykonawcze PHP używane przez Apache lub PHP-FPM może załadować wymagane rozszerzenie Kopano MAPI. Sprawne środowisko PHP z wierszem poleceń nie gwarantuje, że środowisko wykonawcze PHP w przeglądarce ma włączone te same rozszerzenia.
3. Opublikuj punkt końcowy ActiveSync przez HTTPS
Klienci potrzebują stabilnego adresu URL HTTPS dla modułu obsługi ActiveSync, zazwyczaj nazwy hosta, po której następuje /Microsoft-Server-ActiveSync. Skonfiguruj Apache, Nginx lub wybrany odwrotny serwer proxy, aby skierować tę ścieżkę do punktu wejścia Z-Push. Zachowaj kanoniczny punkt końcowy o tej samej nazwie hosta i unikaj przekierowań, które zmieniają metodę żądania lub kierują klienta mobilnego na inną ścieżkę. Przewodnik Kopano wyraźnie ostrzega przed zmianą nazwy katalogu Z-Push w celu utworzenia punktu końcowego, ponieważ przekierowanie może przerwać synchronizację urządzenia.
Użyj ważnego certyfikatu, którego nazwa jest zgodna z nazwą hosta punktu końcowego. Protokół HTTPS chroni dane uwierzytelniające i synchronizujące w trakcie transmisji, a wiele obecnych klientów mobilnych odrzuca niezaufane lub niezgodne certyfikaty. Nie należy obchodzić ostrzeżeń o certyfikatach, wyłączając TLS na kontach produkcyjnych. Jeśli TLS kończy działanie na odwrotnym serwerze proxy, należy upewnić się, że serwer proxy przekazuje żądania i nagłówki związane z uwierzytelnianiem zgodnie z przeznaczeniem oraz że połączenie między serwerem proxy a Z-Push jest zgodne z wewnętrzną polityką bezpieczeństwa.
4. Ustaw stan zapisu i lokalizacje dziennika
Z-Push musi mieć możliwość zapisu stanu i lokalizacji logów. Udziel dostępu do konkretnego konta serwera WWW, na przykład www-dataw wielu instalacjach Debiana i Ubuntu; konto usługi różni się w zależności od dystrybucji. Unikaj ustawiania tych katalogów jako dostępnych do zapisu dla wszystkich użytkowników. W przypadku wdrożenia wielohostowego wybierz mechanizm stanu zaprojektowany z myślą o współdzielonym dostępie, zamiast zakładać, że pliki na jednym węźle są widoczne dla innego. Podręcznik administratora Kopano wyjaśnia uprawnienia do katalogów stanu i zaznacza, że stan powinien zostać zachowany podczas aktualizacji Z-Push.
Skonfiguruj konto mobilne
Na telefonie dodaj konto służbowe lub konto Exchange i wybierz Exchange ActiveSync, Microsoft Exchange lub inną opcję oferowaną przez tego klienta. Dokładne etykiety i ekrany różnią się w zależności od systemu operacyjnego i aplikacji pocztowej. Wprowadź adres e-mail użytkownika i dane logowania. Jeśli automatyczne wykrywanie nie zlokalizuje serwera, wprowadź nazwę hosta Z-Push oraz, jeśli jest wymagany, punkt końcowy ActiveSync. Użyj formatu nazwy użytkownika wymaganego przez konfigurację uwierzytelniania Kopano; nie zakładaj, że pełny adres e-mail i nazwa logowania Kopano są zawsze identyczne.
Pozostaw włączone SSL/TLS i akceptuj zasady urządzenia dopiero po sprawdzeniu, na co zezwalają, na przykład na żądanie hasła lub stosowanie kontroli urządzeń zarządzanych przez organizację. Wybierz kategorie do synchronizacji: pocztę, kontakty, kalendarz i zadania, jeśli są dostępne. Starszy podręcznik Kopano dla urządzeń mobilnych opisuje ogólny przepływ pracy na koncie Exchange, ale zrzuty ekranu i etykiety systemu operacyjnego są nieaktualne. Postępuj zgodnie z instrukcjami aktualnego telefonu, zamiast dosłownie kopiować starsze ścieżki menu.
Jeśli aplikacja pocztowa oferuje harmonogramy synchronizacji, powiadomienia push lub częste aktualizacje zapewniają szybsze dostarczanie wiadomości, ale mogą powodować większe zużycie baterii i obciążenie sieci. Dłuższe interwały odpytywania skracają czas sprawdzania w tle, ale opóźniają nowe wiadomości. W przypadku konta służbowego, gdzie liczy się punktualność poczty, zacznij od ustawienia powiadomień push klienta, jeśli jest obsługiwane, a następnie dostosuj je do zużycia baterii i polityki organizacji.
Przed zarejestrowaniem większej liczby urządzeń sprawdź każdą warstwę
- Punkt końcowy: Otwórz publiczną nazwę hosta w przeglądarce i sprawdź, czy certyfikat TLS jest prawidłowy. Przed dodaniem kont należy usunąć błąd przeglądarki lub ostrzeżenie o certyfikacie.
- Routing sieciowy: Sprawdź, czy ścieżka ActiveSync dociera do modułu obsługi Z-Push bez pętli przekierowań lub ogólnej strony 404 serwera WWW. Punktem końcowym jest moduł obsługi protokołu, a nie zwykła witryna internetowa.
- Uwierzytelnianie zaplecza: Użyj konta testowego i sprawdź, czy logi Z-Push wskazują na pomyślne połączenie zaplecza bez ujawniania haseł lub tokenów.
- Synchronizacja początkowa: Dodaj jeden telefon testowy i sprawdź wybrane foldery poczty, kontakty, kalendarz i zadania. Pomyślne zalogowanie nie gwarantuje, że wszystkie typy danych synchronizują się poprawnie.
- Zmiany dwukierunkowe: Utwórz testowe wydarzenie w kalendarzu na telefonie i potwierdź, że pojawia się ono w Kopano; następnie wprowadź testową zmianę w Kopano i potwierdź, że pojawia się ona na telefonie.
- Ponowne uruchomienie i przywrócenie: Uruchom ponownie usługę internetową w zaplanowanym oknie testowym, sprawdź, czy synchronizacja została przywrócona i potwierdź, że katalog stanu pozostaje nienaruszony.
Rozwiązywanie problemów według objawów
| Objaw | Sprawdź najpierw |
| Telefon nie może zweryfikować serwera lub nie udaje mu się zalogować | Nazwa hosta, łańcuch certyfikatów TLS, punkt końcowy HTTPS i wszelkie przekierowania proxy |
| Poświadczenia zostały odrzucone | Format nazwy użytkownika, uwierzytelnianie Kopano, dostawca zaplecza, dostępność PHP-MAPI i dzienniki serwera WWW |
| Poczta synchronizuje się, ale kalendarz i kontakty nie | Obsługa funkcji zaplecza, wybrane kategorie synchronizacji telefonu i mapowanie folderów |
| Synchronizacja działa raz, a następnie duplikuje się lub resetuje | Czy stan został usunięty, przeniesiony lub jest niespójny na różnych hostach podczas zmiany lub aktualizacji |
| Tylko jedno urządzenie uległo awarii | Zgodność urządzenia, monit o sprawdzenie zasad konta, nieaktualny profil i dzienniki poszczególnych urządzeń; przed zresetowaniem danych przetestuj innego klienta |
| Wszystkie urządzenia ulegają awarii po aktualizacji PHP lub systemu operacyjnego | Ładowanie rozszerzeń PHP-FPM/Apache, zgodność pakietów, logi usług i ostatnie zmiany konfiguracji |
Używaj własnych logów Z-Push oraz logów serwera WWW/PHP razem, dopasowanych do tego samego znacznika czasu. Jeśli chcesz przetestować nowy profil urządzenia, najpierw upewnij się, że reset stanu po stronie serwera jest odpowiedni dla Twojej wersji i sprawdź, czy spowoduje to pełną resynchronizację. Nie usuwaj całego katalogu stanu jako pierwszego kroku rozwiązywania problemów.
Którą konfigurację wybrać?
W przypadku niewielkiej, istniejącej instalacji Kopano Core, zestaw pakietów Z-Push obsługiwany przez dystrybucję, zaplecze Kopano, jeden punkt końcowy HTTPS i starannie skonfigurowany stan lokalny zazwyczaj minimalizują liczbę ruchomych części. Użyj oddzielnego hosta, gdy izolacja lub ograniczenia operacyjne uzasadniają dodatkowe prace związane z siecią i kompatybilnością PHP-MAPI. Projekt wielohostowy należy stosować dopiero po wybraniu i przetestowaniu podejścia opartego na współdzielonym stanie. Jeśli poczta, kalendarze lub kontakty znajdują się poza Kopano, przed wdrożeniem porównaj odpowiednie zaplecze Z-Push i przetestuj każdy typ danych na rzeczywistych klientach mobilnych, z których korzystają użytkownicy.
Pakiety Z-Push i Kopano, obsługa PHP oraz zachowanie urządzeń zmieniają się w zależności od wydania. Przykładową konfigurację zainstalowanego pakietu i odpowiadającą jej dokumentację wydania należy traktować jako miarodajne; starsze podręczniki Kopano są przydatne w kontekście koncepcji, ale nie należy ich bezmyślnie kopiować do nowszego systemu. Repozytorium projektu Z-Push jest źródłem aktualnego kodu projektu i informacji o wydaniu.