Immer wieder fragen Kunden nach ActiveSync Unterstützung für ihre Mailbox. Bis anhin musste ich immer sagen: „Das wird leider nicht unterstützt“.
Doch heute Abend bin ich über Z-Push gestolpert und hab‘ das mal ausprobiert. Hier ist eine ganz kurze und rudimentäre Installationsanleitung (und hier ist die Originalanleitung):
1. Tarball in Verzeichnis /var/www/z-push entpacken
2. Die config.php anpassen:
- Timezone auf Europe/Zurich anpassen
- $BACKEND_PROVIDER = „BackendIMAP“;
- Für den Fall, dass der IMAP Daemon auf dem gleichen Server läuft, brauchen wir kein TLS oder SSL:
define('IMAP_SERVER', 'localhost');
define('IMAP_PORT', 143);
define('IMAP_OPTIONS', '/notls/norsh');
- Ist Courier IMAP auf einem Remote Server, dann ist allenfalls TLS oder SSL angesagt (ungetestet).
- TLS:
define('IMAP_SERVER', 'remote.server.net');
define('IMAP_PORT', 143);
define('IMAP_OPTIONS', '/norsh/
novalidate-cert
'); # falls das Zertifikat self-signed oder sonstwie nicht trusted ist- SSL:
define('IMAP_SERVER', 'remote.server.net');
define('IMAP_PORT', 993);
define('IMAP_OPTIONS', '/notls/norsh/
novalidate-cert')
; # falls das Zertifikat self-signed oder sonstwie nicht trusted ist- Die Datei
backend/ics.php
nachbackend/unused/ics.php
verschieben (wird nicht benötigt. Directoryunused
muss vorher erstellt werden). - Die Apache Config wie folgt ergänzen:
<Directory /var/www/z-push>
php_flag magic_quotes_gpc off
php_flag register_globals off
php_flag magic_quotes_runtime off
php_flag short_open_tag on
</Directory>
Alias /Microsoft-Server-ActiveSync /var/www/z-push/index.php
- Apache neu starten/reloaden und ausprobieren.
Einige Tipps habe ich übrigens von diesem Artikel.
Mir persönlich passt nicht so, dass das state Directory und das Debug-Logfile debug.txt innerhalb des Apache Document Roots liegen. Deshalb verschiebe ich das nach ausserhalb.
In der config.php gibt es zusätzlich folgende Änderung:
define('STATE_DIR', '/var/lib/zpush-state');
Natürlich muss das Directory auch noch erstellt werden:
mkdir /var/lib/zpush-state && chown www-data:www-data /var/lib/zpush-state
Damit das Debug Logfile nach /var/log/zpush/debug.log
schreibt, braucht es folgende Änderung in der Datei debug.php:
In der Funktion debugLog folgende Zeile ändern:
@$fp = fopen('/var/log/zpush/debug.log', "a");
und das Directory inklusive File erstellen:
- mkdir /var/log/zpush/ && touch /var/log/zpush/debug.log && chown -R www-data:www-data /var/log/zpush
Damit das Logfile nicht irgendwann die Platte füllt, sollte man sich überlegen logrotate entsprechend zu konfigurieren.
Nun kann man endlich das iPhone für ActiveSync konfigurieren. Autodiscover ist momentan noch nicht verfügbar. Das werde ich in einem nächsten Schritt aktivieren.
***UPDATE*** Wie man Autodiscover einrichtet wird im Nachfolgeartikel „ActiveSync Autodiscover“ gezeigt.
« Screen Lock ActiveSync AutoDiscover (mit Z-Push und Courier IMAP) »
Hallo, danke für die Beschreibung für die Konfiguration von Z-Push für IMAP! Leider stoße ich an meine Grenzen bei der Nachahmung. Ich habe eine Synology NAS Lösung. Mit der Konsole bin ich auch soweit gekommen, das ich das Verzeichnis etc/httpd/conf/ gefunden habe. Darin sind allerdings mehrere httpd.conf Dateien (-sys; -user, -webdav). Ich habe mir alle angeschaut und vermutlich wird es wohl die httpd.conf-sys sein, an die ich ran muss. Ich kann erahnen, dass ich den ersten Teil wohl in dem Bereich eintragen muss, wo die andere Directories definiert sind. Wo aber der Teil mit „Alias…“ hin muss, da stehe ich völlig im Regen. Kannst Du / Können Sie helfen? VG, Berko
Hallo Berko.
Ich kenne die Synology Config nicht, aber grundsätzlich kann der Alias irgendwo innerhalb dieser Config gesetzt werden. Voraussetzung ist einfach, dass sich dieser Alias im selben VirtualHost Kontext befindet.
Viel Erfolg & Gruss,
Andy
Hallo nochmals,
nach Einfügen des Directories und Neustart erhalte ich die Fehlermeldung „initctl execute fail“. Ich fürchte, dass das was Synology-spezifisches sein könnte. Trotzdem: Eine Idee, was ich falsch gemacht haben könnte?
vg
Berko
Hallo Berko
Nein, leider nicht. Du kannst mit ‚apachectl configtest‘ schauen, ob die Config in Ordnung ist. Vielleicht fehlt das Modul „mod_alias“ in deiner Config. Solltest du unter „LoadModule“ finden…
Gruss, Andy