26 вересня, Вівторок, 2023
A- A A+

Якщо ви хочете отримати можливість Exchange ActiveSync у своєму Zimbra Open Source Edition, ви можете інтегрувати Zimbra і Z-push + Zimbra Backend.

З його допомогою ви можете синхронізувати електронну пошту, контакти та календарі між Zimbra та вашим мобільним пристроєм БЕЗ використання сторонніх додатків (CalDav ...)

Ця стаття лише для Zimbra, яка встановлює один сервер. Якщо у вас Zimbra з мультисерверною установкою, я рекомендую вам встановити Z-push + Zimbra Backend на окремому сервері.

# Встановити залежності

Для Ubuntu 16.04 and 18.04

apt update -y
apt install git php-cli php-soap php-cgi php-mbstring php-curl -y

Склонувати репозиторій

cd /home/dima/

git clone https://github.com/imanudin11/zcs-zpush.git
cd zcs-zpush/

Створити папку для логів

mkdir /var/lib/z-push /var/log/z-push
chmod 755 /var/lib/z-push /var/log/z-push
chown zimbra:zimbra /var/lib/z-push /var/log/z-push

Зберегти папку z-push в /opt

cp -rvf z-push /opt/

Примітка. Будь ласка, відкрийте /opt/z-push/config.php та налаштуйте/змініть Europe/Kiev на свій часовий пояс

Створюєм сімлінк

ln -sf /opt/z-push /opt/zimbra/jetty/webapps/

зберегти скрипт /usr/bin

cp php-cgi-fix.sh /usr/bin/php-cgi-fix.sh
chmod +x /usr/bin/php-cgi-fix.sh

Змініть домен publicHostname на вашому Zimbra на localhost

su - zimbra -c 'zmprov md mydomain.com zimbraPublicServiceHostname localhost zimbraPublicServiceProtocol https'

Примітка . Якщо у вас більше 1 домену, і цей домен хоче використовувати Exchange ActiveSync, вам слід запустити команду вище для кожного домену

# Скопіюйте та замініть jetty.xml.in

Для Zimbra 8.8.15

cp /opt/zimbra/jetty/etc/jetty.xml.in /opt/zimbra/jetty/etc/jetty.xml.in.backup
cp jetty.xml.in-for-zcs-8815 /opt/zimbra/jetty/etc/jetty.xml.in
chown zimbra.zimbra /opt/zimbra/jetty/etc/jetty.xml.in

Для Zimbra 9

cp /opt/zimbra/jetty/etc/jetty.xml.in /opt/zimbra/jetty/etc/jetty.xml.in.backup
cp jetty.xml.in-for-zcs-9 /opt/zimbra/jetty/etc/jetty.xml.in
chown zimbra.zimbra /opt/zimbra/jetty/etc/jetty.xml.in

# Додайте zpush.ini в php

Для Ubuntu 18.04

cp zpush.ini /etc/php/7.2/cgi/conf.d/10-zpush.ini

Перезапустіть Zimbra Mailbox

su - zimbra -c 'zmmailboxdctl restart'

Для тестування перейдіть до https://mydomain.com/Microsoft-Server-ActiveSync зі свого браузера.

Увійдіть у свій обліковий запис Zimbra.

Якщо це працює, ви можете побачити результат, як показано нижче.

Або ви можете налаштувати свої поштові програми на мобільних пристроях і переконатися, що виберіть exchange/activesync

zimbra z push1

Для перевірки можна спробувати налаштувати пошту за допомогою старндартного PUSH повідомлення на вашому мобільному пристрої (Microsoft Exchange)

Iphone (ios)

zimbra z push2

При успішному налаштуванні ви побачите список синхронізації: Пошта, Контакти, Календар та нотатки

zimbra z push3

Створюю подію в календарі і в лог файлах все ок

08/02/2022 13:53:04 [14113] [ INFO] [Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.] ExportChangesDiff->InitializeExporter(): Found '1' changes for 'f10'
08/02/2022 13:53:04 [14125] [ INFO] [Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.] ExportChangesDiff->InitializeExporter(): Found '1' changes for 'f10'
08/02/2022 13:53:04 [14125] [ INFO] [Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.] cmd='Ping' memory='8.67 MiB/12.00 MiB' time='8.67s' devType='iPhone' devId='poq8o2iutt1bn3smpqkm0g1feo' getUser='di@Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.' from='127.0.0.1' version='2.3.4' method='POST' httpcode='200'
08/02/2022 13:53:04 [14113] [ INFO] [Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.] cmd='Ping' memory='8.67 MiB/12.00 MiB' time='15.49s' devType='iPhone' devId='poq8o2iutt1bn3smpqkm0g1feo' getUser='di@Ця електронна адреса захищена від спам-ботів. Вам необхідно увімкнути JavaScript, щоб побачити її.' from='127.0.0.1' version='2.3.4' method='POST' httpcode='200'