Horde + ActiveSync


I’ve tried everything. Mail works perfectli, Horde wroks, I can login and chech emails.

But on mobil devices like Android, iPhone I can’t sync with Horde ActiveSync. I always get this: wrong username or password everytime when I try to set up the Exchange account.

On the web I can run rpc.php, and it’s OK.

Any idea?

I can at least confirm that it does not work as expected.

When testing EAS on Non-Exchange platforms I try to access server/Microsoft-Server-ActiveSync by using a browser. This should first throw an authentication dialog which does not happen here.
The Alias is obviously set as documented, and the Apache log shows a “200” for the connection attempt.

I think there is something wrong with the Apache config.

Best Regards,

I can confirm that active sync is not activated in the Horde App.

I’m using this in a small environment (~5 devices), steps to activate are:

[li] check that Hordes “ActiveSync” component is installed (debian package php-horde-activesync)[/li]
[li] activate activesync in horde, I used a new conf file here to not break with later updates. Most values are defaults derived from a plain debian installation.

echo "<?php \$conf['activesync']['enabled'] = true; \$conf['activesync']['emailsync'] = true; \$conf['activesync']['version'] = '12.0'; \$conf['activesync']['auth']['type'] = 'basic'; \$conf['activesync']['autodiscovery'] = 'full'; \$conf['activesync']['outlookdiscovery'] = false; \$conf['activesync']['logging']['type'] = 'horde'; \$conf['activesync']['logging']['path'] = '/var/log/horde/'; \$conf['activesync']['logging']['type'] = 'custom'; \$conf['activesync']['ping']['heartbeatmin'] = 60; \$conf['activesync']['ping']['heartbeatmax'] = 2700; \$conf['activesync']['ping']['heartbeatdefault'] = 480; \$conf['activesync']['ping']['deviceping'] = true; \$conf['activesync']['ping']['waitinterval'] = 5; " > /etc/horde/horde/conf.d/20-manual-activesync.php chgrp www-data /etc/horde/horde/conf.d/20-manual-activesync.php chmod o-rwx /etc/horde/horde/conf.d/20-manual-activesync.php [/li]
[li] check alias configuration for apache (file has been created by Debian packages), working configuration for me is:

Alias /horde /usr/share/horde


Alias /Microsoft-Server-ActiveSync /usr/share/horde/rpc.php
Alias /autodiscover/autodiscover.xml /usr/share/horde/rpc.php

<Directory /usr/share/horde>
AllowOverride Limit FileInfo

[li] if modified restart apache:

invoke-rc.d apache2 restart

I hope I didn’t miss something, I had to modify the configuration with the latest update of the horde app.

Recently I migrated to the docker version of the horde App. To reactivate ActiveSync I did the following:

  • Identify the local directory of the docker container:
cd /var/lib/docker
find -type d -name "conf.d"|grep upper/etc/horde/horde/conf.d

In my case it was /var/lib/docker/overlay/c08b6b5ce52d7fc78690ea5bb00d913b821bcfae8c7a42e35c1835883a39cd55/upper/etc/horde/horde/conf.d. I changed into that directory and created 05-manual-activesync.php (for some reason the file name had to change in comparsion to old versions of the docker app):

cd /var/lib/docker/overlay/c08b6b5ce52d7fc78690ea5bb00d913b821bcfae8c7a42e35c1835883a39cd55/upper/etc/horde/horde/conf.d

echo "<?php
\$conf['activesync']['enabled'] = true;
\$conf['activesync']['emailsync'] = true;
\$conf['activesync']['version'] = '12.0';
\$conf['activesync']['auth']['type'] = 'basic';
\$conf['activesync']['autodiscovery'] = 'full';
\$conf['activesync']['outlookdiscovery'] = false;
\$conf['activesync']['logging']['type'] = 'horde';
\$conf['activesync']['logging']['path'] = '/var/log/horde/';
\$conf['activesync']['logging']['type'] = 'custom';
\$conf['activesync']['ping']['heartbeatmin'] = 60;
\$conf['activesync']['ping']['heartbeatmax'] = 2700;
\$conf['activesync']['ping']['heartbeatdefault'] = 480;
\$conf['activesync']['ping']['deviceping'] = true;
\$conf['activesync']['ping']['waitinterval'] = 5;
" > 05-manual-activesync.php
chgrp www-data 05-manual-activesync.php
chmod o-rwx 05-manual-activesync.php