Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)

Take your Zimbra with you!
carnold
Outstanding Member
Outstanding Member
Posts: 224
Joined: Fri Sep 12, 2014 10:40 pm

Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)

Post by carnold »

[quote user="lytledd"]Just so we're all on the same page here, what are the IP addresses of your z-push server and your Zimbra server? Since the error you've listed indicates that you're hitting Zimbra's web server and not your Z-Push server's:

Doug[/QUOTE">
Z-push server is 192.168.123.3

Zimbra server is 192.168.124.3
The firewall is configured to pass traffic from 123 subnet to 124 subnet and vice versa.
lytledd
Outstanding Member
Outstanding Member
Posts: 536
Joined: Sat Sep 13, 2014 12:54 am
ZCS/ZD Version: Release 9.0.0.ZEXTRAS.20221203 FOSS

Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)

Post by lytledd »

[quote user="carnold"]Z-push server is 192.168.123.3

Zimbra server is 192.168.124.3
[QUOTE]The firewall is configured to pass traffic from 123 subnet to 124 subnet and vice versa.[/QUOTE][/QUOTE]
And that's the problem, since traffic has to hit 123.3


Then this should be:
https://192.168.123.3/Microsoft-Server-ActiveSync
You hit your Z-Push server and it handles the Zimbra connect. Using 124.3 bypasses Z-Push all together.
Doug
carnold
Outstanding Member
Outstanding Member
Posts: 224
Joined: Fri Sep 12, 2014 10:40 pm

Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)

Post by carnold »

[quote user="lytledd"]And that's the problem, since traffic has to hit 123.3


Then this should be:
https://192.168.123.3/Microsoft-Server-ActiveSync
You hit your Z-Push server and it handles the Zimbra connect. Using 124.3 bypasses Z-Push all together.
Doug[/QUOTE]

That is the ip I am using, not 124.3.
carnold
Outstanding Member
Outstanding Member
Posts: 224
Joined: Fri Sep 12, 2014 10:40 pm

Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)

Post by carnold »

So i am trying to understand "how" z-push and zimbra backend are installed? The install doc of z-push 2 states to copy the untarred contents to /usr/share/z-push. However, around the internet shows z-push as installed into a folder that is on the root of your webserver. So, it will look something like this in my case:

/srv/www/htdocs/sites/z-push

And the alias shows it pointing to a index.php, like /srv/www/htdocs/sites/z-push/index.php. If the install doc is to be used which is copied into /usr/shre/z-push, thats where the index.php file is.

The install doc of zimbra backend says to copy to a folder called backend. And the install doc says to modify a config.php file. The config.php does not exist in my download of z-push zimbra backend. As you can see, i am totally confused on where these 2 downloads are suppose to be copied. Can someone instruct me on where to copy these 2 downloads (the contents of z-push 2 and z-push zimbra backend)? Or point me to online instructions?
lytledd
Outstanding Member
Outstanding Member
Posts: 536
Joined: Sat Sep 13, 2014 12:54 am
ZCS/ZD Version: Release 9.0.0.ZEXTRAS.20221203 FOSS

Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)

Post by lytledd »

Okay, a little info is neccessary. There are 2 projects at work here. Z-Push and the Zimbra backend for Z-Push. The backend would be considered a plugin for Z-Push that allows it to communicate with Zimbra.
Typically, you install Z-Push into your webserver's root directory. Under Mandriva/Mageia/CentOs, it's /var/www/html, but I've also seen it the way you've listed. Once you've extracted Z-Push into your webserver's root, you need to extract the Zimbra Backend files into a folder called zimbra (You have to create it). I'm running under CentOs 6, since the author develops on CentOs, mine is:
/var/www/html/z-push/backend/zimbra
Once done, there is nothing else you need to do in the backend folder. Everything is done in the Z-Push config.php, including adding Zimbra Backend specific settings. My section is:
// Defines the default time zone, change e.g. to "Europe/London" if necessary

define('TIMEZONE', 'America/Detroit');





// Defines the default time zone, change e.g. to "Europe/London" if necessary

define('TIMEZONE', 'America/Detroit');


// The data providers that we are using (see configuration below)

define('BACKEND_PROVIDER', "BackendZimbra");


// ************************

// Zimbra Backend start

// ************************


define('ZIMBRA_URL', 'https://10.10.10.250');

define('ZIMBRA_USER_DIR', 'zimbra_user');

define('ZIMBRA_SYNC_CONTACT_PICTURES', true);

define('ZIMBRA_VIRTUAL_CONTACTS',true);

define('ZIMBRA_VIRTUAL_APPOINTMENTS',true);

define('ZIMBRA_VIRTUAL_TASKS',true);

define('ZIMBRA_IGNORE_EMAILED_CONTACTS',true);

define('ZIMBRA_HTML',true);

define('ZIMBRA_ENFORCE_VALID_EMAIL',true);

define('ZIMBRA_SMART_FOLDERS',false);

define('ZIMBRA_RETRIES_ON_HOST_CONNECT_ERROR',5);


//=== Optional Zimbra Specific Debug Information ===

define('ZIMBRA_DEBUG',false);

Under CentOs, apache settings are located in /etc/httpd/conf.d
That's where I setup my z-push.conf
cat z-push.conf
Alias /Microsoft-Server-ActiveSync /var/www/html/z-push/index.php

Once that is done, I verified my php.ini file has the required settings and restart apache.
Browsing to:
https://10.10.10.250/Microsoft-Server-ActiveSync
Gets me a login prompt.
The error that you've shown, means you are connecting directly to Zimbra. When I do the above, but instead point directly to my Zimbra server I get:

HTTP ERROR 500
Problem accessing /service/extension/zimbrasync. Reason:
system failure: Extension HTTP handler not found at /zimbrasync
Powered by Jetty://


Which means that your firewall is doing a redirect and skipping Z-push.
Doug
carnold
Outstanding Member
Outstanding Member
Posts: 224
Joined: Fri Sep 12, 2014 10:40 pm

Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)

Post by carnold »

Thanks Doug for your help!

[quote user="lytledd"]Okay, a little info is neccessary. There are 2 projects at work here. Z-Push and the Zimbra backend for Z-Push. The backend would be considered a plugin for Z-Push that allows it to communicate with Zimbra.
Typically, you install Z-Push into your webserver's root directory. Under Mandriva/Mageia/CentOs, it's /var/www/html, but I've also seen it the way you've listed. Once you've extracted Z-Push into your webserver's root, you need to extract the Zimbra Backend files into a folder called zimbra (You have to create it). I'm running under CentOs 6, since the author develops on CentOs, mine is:
/var/www/html/z-push/backend/zimbra[/quote]

Done! Mine looks like /srv/www/htdocs/sites/z-push/backend/zimbra
[quote]Once done, there is nothing else you need to do in the backend folder. Everything is done in the Z-Push config.php, including adding Zimbra Backend specific settings. My section is:
// Defines the default time zone, change e.g. to "Europe/London" if necessary

define('TIMEZONE', 'America/Detroit');





// Defines the default time zone, change e.g. to "Europe/London" if necessary

define('TIMEZONE', 'America/Detroit');[/quote]

Mine is define('TIMEZONE', 'America/Raleigh';


[quote] // The data providers that we are using (see configuration below)

define('BACKEND_PROVIDER', "BackendZimbra");[/quote]

Done in mine


[quote]// ************************

// Zimbra Backend start

// ************************


define('ZIMBRA_URL', 'https://10.10.10.250');[/quote]

Mine = define('ZIMBRA_URL', 'https://192.168.123.3');

[quote]Under CentOs, apache settings are located in /etc/httpd/conf.d
That's where I setup my z-push.conf
cat z-push.conf
Alias /Microsoft-Server-ActiveSync /var/www/html/z-push/index.php
[/quote]

Done to mine at /etc/apache2/vhost.d
[quote]Once that is done, I verified my php.ini file has the required settings and restart apache.[/quote]

What are those required settings?
[quote]Browsing to:

Gets">https://10.10.10.250/Microsoft-Server-ActiveSync
Gets me a login prompt.[/quote]

Browsing to https://192.168.123.3/Microsoft-erver-ActiveSync gives me same error as before.
[quote]The error that you've shown, means you are connecting directly to Zimbra.[/quote]

This can't be as the zimbra server is a different server from z-push server (192.168.124.3). The fact that 192.168.123.3 shows me a jetty:// error means the z-push server is making it to the zimbra server, no?
[quote]When I do the above, but instead point directly to my Zimbra server I get:

HTTP ERROR 500
Problem accessing /service/extension/zimbrasync. Reason:
system failure: Extension HTTP handler not found at /zimbrasync
Powered by Jetty://

[/quote]

I get the same error when i browse to
[quote">Which means that your firewall is doing a redirect and skipping Z-push.[/QUOTE]

Not sure how that can be? The laptop i am using is on the 123 subnet and the firewall is passing traffic from 123 to 124. When using the ip address and not a DNS name, the connection goes right to that ip specified. I am going to PM you about a remote session.
sidkipper
Posts: 12
Joined: Sat Sep 13, 2014 1:08 am

Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)

Post by sidkipper »

Maybe tail the webserver logs on your Z-Push server (192.168.123.3) and your Zimbra server (192.168.124.3 - eg /opt/zimbra/log/access_log.2012-11-26). Then access https://192.168.123.3/Microsoft-Server-ActiveSync from a browser, the GET that fails with a 500 error will appear in the log of whichever server you are actually hitting.
The fact that you are seeing an error from Jetty suggests its the Zimbra server (the Zimbra backend and Z-Push would not generate this error, or be expected to pass it through from the Zimbra server without attempting to parse it).
BTW - Your Z-Push config looks wrong, assuming I've got your IP's the right way round, it should be...

define('ZIMBRA_URL', 'https://192.168.124.3');>
lytledd
Outstanding Member
Outstanding Member
Posts: 536
Joined: Sat Sep 13, 2014 12:54 am
ZCS/ZD Version: Release 9.0.0.ZEXTRAS.20221203 FOSS

Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)

Post by lytledd »

Thanks for the input! It seems he has found the issue, his apache proxy is redirecting the output. He's posted a message on the apache mailing list asking for guidance.
Doug
carnold
Outstanding Member
Outstanding Member
Posts: 224
Joined: Fri Sep 12, 2014 10:40 pm

Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)

Post by carnold »

[quote user="sidkipper"]Maybe tail the webserver logs on your Z-Push server (192.168.123.3) and your Zimbra server (192.168.124.3 - eg /opt/zimbra/log/access_log.2012-11-26). Then access https://192.168.123.3/Microsoft-Server-ActiveSync from a browser, the GET that fails with a 500 error will appear in the log of whichever server you are actually hitting.
The fact that you are seeing an error from Jetty suggests its the Zimbra server (the Zimbra backend and Z-Push would not generate this error, or be expected to pass it through from the Zimbra server without attempting to parse it).[/quote]
This is exactly what Doug was saying and he was kind enough to login and take a look around. In fact, the 192.168.123.3 server was redirecting/proxying requests to the Zimbra server
sangamc
Advanced member
Advanced member
Posts: 150
Joined: Sat Sep 13, 2014 12:39 am

Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)

Post by sangamc »

I am in a similar situation. I have the zimbra proxy sitting infront of serveral backend servers. Ill be working on finding a work around later this week. Since its a production environment, there is only so much that can be done during work hours :/
Post Reply