Actually, mode mobile devices activesync just there on Zimbra NE. Products comparison between Zimbra NE and Zimbra OSE can checked on this link : http://files.zimbra.com/website/docs/Zimbra%20Collaboration%20Product%20Edition%20Comparison.pdf
On this guidance, i will try to enable mode mobile activesync on Zimbra OSE with third party application. The application are Z-Push and Z-Push Zimbra Backend. On this guidance, i am using Zimbra OSE 8.5 single server on CentOS 7. if you are using other OS, you can adjust with your system.
For guidance install Zimbra on CentOS 7, you can following this article : https://imanudin.net/2014/10/07/how-to-easy-install-zimbra-8-5-on-centos-7/. On this guidance, Zimbra and Z-Push using same server. Protocol http (80) will used by Z-Push and https (443) will used by Zimbra Webmail.
Change port 80 on Zimbra with other port, example port 81. Also change mode http to https for Zimbra webmail
su - zimbra zmprov -l ms `zmhostname` zimbraMailPort 81 zmtlsctl https zmcontrol restart exit
Install packages needed by Z-Push
yum install php-cli php-soap php-process php httpd
Download and install Z-Push. When this article written, Z-Push final release is 2.1.3-1892 version
wget -c http://download.z-push.org/final/2.1/z-push-2.1.3-1892.tar.gz tar -zxvf z-push-2.1.3-1892.tar.gz mv z-push-2.1.3-1892 /var/www/html/z-push
Make log directory and data
mkdir /var/lib/z-push /var/log/z-push chmod 755 /var/lib/z-push /var/log/z-push chown apache:apache /var/lib/z-push /var/log/z-push
Make document root for Z-Push on Apache
vi /etc/httpd/conf.d/z-push.conf
Fill with information like below
Alias /Microsoft-Server-ActiveSync /var/www/html/z-push/index.php php_flag magic_quotes_gpc off php_flag register_globals off php_flag magic_quotes_runtime off php_flag short_open_tag on
Also make sure memory_limit = 128M on /etc/php.ini. Download Z-Push Zimbra Backend
wget -c http://downloads.sourceforge.net/project/zimbrabackend/Release61/zimbra61.tgz tar -zxvf zimbra61.tgz mv zimbra61/z-push-2/ /var/www/html/z-push/backend/zimbra
Configure Z-Push for using Zimbra Backend
vi /var/www/html/z-push/config.php
change and adjust with your region
define('PROVISIONING', false); define('LOOSE_PROVISIONING', true); define('TIMEZONE', 'Asia/Jakarta'); define('BACKEND_PROVIDER', 'BackendZimbra');
Configure Zimbra Backend and define Zimbra URL to localhost or hostname of Zimbra
vi /var/www/html/z-push/backend/zimbra/config.php
define('ZIMBRA_URL', 'https://mail.imanudin.net');
Restart service httpd
service httpd restart
check ActiveSync with browser : http://mail.imanudin.net/Microsoft-Server-ActiveSync. If asking username and password, fill with username and password accounts your Zimbra Mail Server. If appear information like below, configuration Z-Push and Z-Push Zimbra Backend has been success and could be used with mobile devices
Good luck and hopefully useful 😀
Source : http://z-push.org/ and http://sourceforge.net/projects/zimbrabackend
Thank you by far the easiest how to for zimbra and z-push
Hi !
To avoid using port 80, I followed this guide
http://community.zimbra.com/collaboration/f/1906/t/1130674
Well, not tested with Centos 7, and Zimbra 8.5 yet
Thanks
Wow, thanks David for the link. I will try it later 🙂
The link David posted didn’t convert correctly with the new site. Here is the same info from the original zimbra forum.
http://forums.zimbra.com/mobility/64061-how-run-z-push-zimbra-jetty-proof-concept.html
can i get the zimbra to be in http and zpush to be on https?
Hi Imran,
Yes, you can. You only need to change Zimbra port 443 to another port (example 444). and change mode zmtlsctl to http
su – zimbra
zmtlsctl http
After that, you can configure httpd/apache to using https (443)
Better yet : if your requirement for HTTPS with ActiveSync is because of the device (Windows Phone for example), you could configure the Apache to reverse proxy requests that are not directed to ActiveSync back to Zimbra.
Is it possible to set z-push to use a different IP and domain so that both z-push and Zimbra can run securely on port 443?
Hi Chris,
Yes, you can do it Chris 🙂
Hi,
Any possibilities to have it updated or alternative for ubuntu 14.04 LTS 64 BIT?
Hi Firsttimeit,
Yes, that is possible. You only need to install package required by Z-Push in Ubuntu
FatalMisconfigurationException
The configured LOGFILE can not be modified.
Trace:
Array
(
[0] => Array
(
[file] => /var/www/html/z-push/index.php
[line] => 132
[function] => CheckConfig
[class] => ZPush
[type] => ::
[args] => Array
(
)
)
)
Hi Shakthi,
Please try to use CentOS first as described in the article. If work great, please improve with other OS such as Ubuntu, openSUSE and other OS
This tutorial made quick work out of getting getting z-push running on a new zimbra install. Still works with the most up to date releases, zimbra63.tgz and the latest z-push 2.2.3. Thanks for all your hard work and returning this to the community.
Hi Mack Allison,
Thanks for visit. Appreciated
For configurations serving multiple domains there is a setting which must be changed in /var/www/html/z-push/config.php.
By default at the version I installed it is set to false, edit to true:
define(‘USE_FULLEMAIL_FOR_LOGIN’, true);
so that users can sign in with name@domain1.com, while other users can sign in at name@domain2.com.
Hi Mack Allison,
Thanks for share and your info. Appreciated 😉
Where can I get php-mapi?
Hi,
I think in this configuration, i am not using php-mapi.
Hi,
I have the same error:
FatalMisconfigurationException
The configured LOGFILE can not be modified.
Trace:
Array
(
[0] => Array
(
[file] => /var/www/html/z-push/index.php
[line] => 132
[function] => CheckConfig
[class] => ZPush
[type] => ::
[args] => Array
(
)
)
)
CENTOS7
Zimbra 8.5.0
Z-PUSH 2.1.3-1892
ZimbraBackend 61
What’s the problem iman ?
Thanks for all !
Taser
Hi,
Please try to change permission of folder /var/log/z-push
Ok now, I have this error :
Forbidden
You don’t have permission to access /Microsoft-Server-ActiveSync on this server.
Ok now with this command i don’t have any errors.
setenforce 0
The android smartphone connection to the server and vice versa zimbra works fine, but the connection with Outlook 2013 does not work.
I created a new activesync connection but it does not work, I have an error and if I close my outlook and opened it again I have my active sync account, but the sync does not work.
Have you got an idea ?
Hi,
I am sorry. I do not have Outlook 2013 for testing ActiveSync. I am cannot give you idea
The calendar does not works. Tested on android 5.0.1 over samsung galaxy s4. The server is: $zmcontrol -v Release 8.6.0_GA_1153.RHEL6_64_20141215151155 RHEL6_64 FOSS edition
Hi,
How you testing calendar sync? whether create calendar in webmail or in mobile devices?
hi i have problem with connecting to my z-push server. when i try to connect with username@domain.com and his password (for zimbra web page it works) it show me this message
FatalNotImplementedException
Can not proceed without a device id.
Trace:
Array
(
[0] => Array
(
[file] => /var/www/html/z-push/lib/core/zpush.php
[line] => 385
[function] => DeviceManager
[class] => DeviceManager
[type] => ->
[args] => Array
(
)
)
[1] => Array
(
[file] => /var/www/html/z-push/backend/zimbra/zimbra.php
[line] => 714
[function] => GetDeviceManager
[class] => ZPush
[type] => ::
[args] => Array
(
)
)
[2] => Array
(
[file] => /var/www/html/z-push/lib/request/requestprocessor.php
[line] => 81
[function] => Logon
[class] => BackendZimbra
[type] => ->
[args] => Array
(
[0] => admin
[1] =>
[2] => admin
)
)
[3] => Array
(
[file] => /var/www/html/z-push/index.php
[line] => 180
[function] => Authenticate
[class] => RequestProcessor
[type] => ::
[args] => Array
(
)
)
)
Hi,
Your configuration has been worked. You can try using mobile devices
Already existing GAL entries are not coming while composing an email, also we cannot search in the address book for existing users in zimbra
Hello Sumesh,
How about the message on Mailbox? it’s also appear on your mobile devices? please check the log information of /var/log/z-push/z-pushxxx.log
Hi Iman,
Everything works fine except the GAL. No clue in logs.
I have enabled debug logging, still nothing comes when we try any GAL search.
Hi Sumesh,
Are you has been try on the other devices?
Iman,
it is working with android phones perfectly, but with Outlook 2013 it is not working.
Did your configuration works with Outlook ?
Thanks
Hi
Does this work with Outlook 2013? Im interested in imap, calendar and contact sync.
Thanks
Hello,
some of my friends said it was working. I am not yet try and not use Outlook 😀
Hello
Can we enable/disable ActiveSync selectively for certain users.
Thank you
Hello SKN,
For this time, i am still struggle for to do that 🙂
Thank you for the response.
Let me know the options you had tried already on this.
Hello
It there a way to enable / disable active-sync for specific users in zimbra
Kanthan
I tried to use https for z-push due to some device by default will create a ssl connection. So I changed the Zimbra 443 to 4443 use zmprov -l ms `zmhostname` zimbraMailsslPort 4443. Since I installed all Zimbra package, it also help me installed the proxy. The nginx is Sitka using the port 443. Any suggestion?if I Change the proxy port, will it make Zimbra have other problem?
Hello Jon,
Please paste the result of the following command :
i have setup the full installation package. as a result i had installed and enabled the proxy function. i want to use 443 for Z-push. i try to use the command: zmprov -l ms `zmhostname` zimbraMailSSLPort 4443. I saw that the https port of the webmail do changed to 4443, however, the nginx (proxy) is still using the port 443. i have the following queries
1. if i only have 50 user, should i use the proxy
2. if i changed the proxy port, will it affect other things?
3. how should i change the proxy port or disable the proxy?
thank you.
Hello Harris,
Please paste the result of the following command :
1. Zimbra Proxy has been mandatory install starting from new version
2. I think will not effect 😀
3. Please paste the result from above command
zimbra@mail:~$ zmprov gs `zmhostname` | grep -i 443
zimbraMailSSLClientCertPort: 9443
zimbraMailSSLPort: 8443
zimbraMailSSLProxyClientCertPort: 3443
zimbraMailSSLProxyPort: 443
PS: i have UNDO the ” zmprov -l ms `zmhostname` zimbraMailSSLPort 4443″ setting when i found that the 443 is being used by the proxy.
Hi Harris,
You can configure and change like this
How about the z-push? Just use 80. Can I change to 443? Should I change to 4443 (Zimbra https) , 8443 Zimbra proxy. If z-push use 443, how to setup the key,cert, ca chain cert?
Thank you
Hello Jon,
Yes, you can change to 443 if want to use https. For SSL, you can setup on Apache instead of Zimbra
How about the z-push? Can I change to 443? Should I change to 4443 (Zimbra https) , 8443 Zimbra proxy. If z-push use 443, how to setup the key,cert, ca chain cert?
Thank you
Hello I an,
How about the z-push? Can I change z-push listen to 443? Should I change Zimbra https to 4443 , 8443 for Zimbra proxy. If z-push use 443, how to setup the key,cert, ca chain cert?
Thank you
Anyone having trouble getting a 500 error after following this guide… (took me 2 days) to find out I was missing MBString
I kept getting the below error
[26137] [FATAL] [XXX@XXXX.COM] Fatal error: /var/www/html/z-push/lib/utils/utils.php:1165 – Call to undefined function mb_detect_encoding() (1)
From your shell run:
yum install php-mbstring
service httpd restart
Should work then! Im on the latest versions of cent, zimbra and z-push
Great! Many thanks! 🙂
Hi Radu,
Thanks 😉
HTTP ERROR 404
Problem accessing /service/extension/zimbrasync. Reason:
Not Found
in my case zimbra open source server and zimbra active sync server are separate .Zimbra server is running on port 443 (https) .
https://myzimbra-open-sourec-testing-server.com/Microsoft-Server-ActiveSync
Please assist . . .
please assist . . .
Hi Prabhdep Singh,
Please try this guidance with Bahasa for separate servers : https://imanudin.com/2013/10/09/tips-zimbra-sinkronisasi-zimbra-open-source-dengan-mobile-devices-menggunakan-z-push/
Dear Iman,
Thanks a lot , but this post is similar & in non-english language . Please clear few things . . .
1.) I have testing zimbra open source mail server on Ubuntu 16.04 64 Bits operating system with https (443) automatically enabled and its working fine and ActiveSync is on another Ubuntu 16.04 32 bits operating system.Was that the issue.Does ActiveSync works on 32 bits platform or not.
2.) if i install ActiveSync onto 64 bits platform, does it help.
3.) If i install ActiveSync onto same zimbra open source mail server.Will it disturb my working zimbra open source mail server.
Please assist . . .
Dear Iman,
One more thing . . . before installing z-push
I install php7.0-cli, php7.0-soap, php7.0, apache2/httpd
But this “php-process” i am unable to find anywhere . . . for ubuntu 16.04 platform.
is this the issue . . . . or is its the mandatory package . . .
please assist further . . . .
Dear Iman,
Now i have install z-push onto same server where testing zimbra open source mail server is installed.
When i try to open the url like :-
http://myzimbra-open-sourec-testing-server.com/Microsoft-Server-ActiveSync
its asking for zimbra user name and password and i entered and it accept , but a BLANK page get appeared . . . nothing else . . ..
Please assist . .. .
Hi,
Please try to access from mobile devices. If you are using Ubuntu as base system, please try to use CentOS to make sure all configuration running well as guidance on article
read again all turtoial:
backend/zimbra/config.php
z-push/config.php
__
configure it correctly
__
On one domain is blank page but on another is working play with define(‘ZIMBRA_URL’,
Dear Iman,
I tried the same with Centos 7 64-bits operating system by following the above steps as it is.When open url , its give 404-page not found error.When i check /var/log/httpd/error_log file, it shows PHP Fetal error: unknown: Failed opening ‘/var/www/html/z-push/index.php’ (include_path=’.:/usr/share/php:user/share/pear/PEAR’)
Dear Iman,
1.) When i run test.php file in web-browser ” ” , opened web-page shows under “Core” shows that this path
include_path .:/usr/share/php:/usr/share/pear .:/usr/share/php:/usr/share/pear is already set.
2.) I also set the same path manually in in /etc/php.ini and restart apache/httpd service
But no use . . . please assist further .. . . where i am committing mistake . . . .
OS:CentOS 7
ZCS:8.7.11
zpush: 2.3.9
I installed zpush as per article https://www.stefanseidel.info/Z-Push_on_Zimbra_8
It is working fine when connected in Wireless/LAN
But for same settings from Internet Username or password is incorrect
27/03/2018 13:07:15 [14237] [ INFO] [unknown] User-agent: ‘unknown’
27/03/2018 13:07:15 [14237] [FATAL] [unknown] Exception: (AuthenticationRequiredException) – Access denied. Please send authorisation information
27/03/2018 13:07:15 [14237] [ INFO] [unknown] cmd=” memory=’2.24 MiB/2.50 MiB’ time=’0.01s’ devType=” devId=” getUser=’unknown’ from=’X.X.X.X’ idle=’0s’ version=’2.3.9′ method=’OPTIONS’ httpcode=’401′
27/03/2018 12:58:50 [14240] [FATAL] [unknown] Exception: (AuthenticationRequiredException) – Access denied. Please send authorisation information
27/03/2018 12:59:05 [14241] [FATAL] [unknown] Exception: (AuthenticationRequiredException) – Access denied. Please send authorisation information
Hi Iman,
Thanks for all your articles.
Based on your this article, I have configured z-push (Version 2.3.4) in past on CentOS 7 and zimbra version 8.8.15 and its working fine.
I just wanted to know, can I install the latest z-push (Z-Push 2.6.2) version on the same installation?
Will it work on CentOS 7 and Zimbra 8.8.15 ?
Thanks in advance.
Hi,
Yes, you can use latest version. Please adjust with your env