Eine kleine Problemlösung zu Kolab an der ich jetzt schon seit geraumer Zeit sitze und die kürzlich von einem Teilnehmer im Kolab-Bugtracker aufgelöst, jedoch noch nicht in das “fertige” Kolab eingeflossen ist.

Wie äußert sich der Fehler?

Es ist bei Kolab 3.x in Verbindung mit Debian (in meinem Fall Wheezy) nicht möglich, ActiveSync zu nutzen, was jedoch vorgesehen ist und durch das Syncroton-Projekt ermöglicht wird. Die Symptome gehen dahin, dass am iPhone gesagt wird, die Zugangsdaten würden nicht stimmen. Outlook teilt mit, der EAS (Exchange ActiveSync) nicht läuft. Andere Geräte hatte ich zum testen nicht da.

Einen ActiveSync-Server testen

Apropos “testen”: Einen ActiveSync-Server kann man normalerweise checken, indem man seine URL aufruft (zum Beispiel domain.tld) und ein “/Microsoft-Server-ActiveSync” anhängt. Es folgt eine Webauthentifizierung bei der die normalen Zugangsdaten eingegeben werden sollten. Folgt dann eine Seite mit einem ähnlichen Text wie dem folgenden, ist immerhin die Schnittstelle erreichbar.

It works!
Your userid is: 7 and your IP address is: xxx.xxx.xxx.xxx.

Wie kommt man bei Kolab an die Syncroton-Logs?

Nun, die müssen erst aktiviert werden. Standardmäßig loggt Syncroton nichts. Aktiviert wird das Logging über die Roundcube-Config mit folgendem Einzeiler:

$config[‘activesync_debug’] = true;

Und bei älteren Installationen mit älterem Roundcube:

$rcmail_config[‘activesync_debug’]

Ist die Option gesetzt wird sofort alles was mit Syncroton passiert nach /var/log/kolab-syncroton/ geloggt.

Der Fehler

Der Fehler sieht in meinem Fall so aus:

{“user”:”m@maltris.org”,”cmd”:”Sync”,”device”:”Applxxxxxxxxx”,”type”:”iPhone”} Syncroton_Command_Sync::handle::179 folder 38b950ebd62cd9a66929c89615d0fc04 not found
[04-Apr-2014 22:17:15,000000 +0000]: [WARN] {“user”:”m@maltris.org”,”cmd”:”Sync”,”device”:”Applxxxxxxxxx”,”type”:”iPhone”} Syncroton_Command_Sync::getResponse::972 failed to get folder state for: 38b950ebd62cd9a66929c89615d0fc04

Was ruft diesen Fehler hervor?

Da Kolab auf Debian auch bei der Installation ein paar Probleme machte als es um das anlegen von Datenbanken usw. ging, blieb auch aus, dass in der “roundcube”-Datenbank die von Syncroton benötigten Datenbanken angelegt wurden. Die fertigen SQL-Abfragen hierzu liegen bereits auf dem System (wenn Kolab vollständig installiert wurde) und müssen nur importiert werden.

Die Lösung

Die Lösung ist einfach. Wie schon angesprochen muss lediglich eine .sql-Datei in die “roundcube”-Datenbank importiert werden. Dafür gibt es mehrere Möglichkeiten. Die Datei kann heruntergeladen und per z. B. HeidiSQL, phpmyadmin oder MySQLDumper importiert werden.

Eine andere einfache Möglichkeit ist, direkt über die Kommandozeile mit dem “mysql”-Befehl die Datei zu importieren.
In jedem Fall muss das “roundcube”-Passwort bereitgehalten werden, was bei der Kolab-Installation vergeben und hoffentlich von euch gespeichert wurde. Ansonsten ist es auch nochmal in der Datei /etc/kolab/kolab.conf ziemlich weit oben zu finden. (Einfach nach “roundcube” suchen.)

Die .sql-File liegt unter

/usr/share/doc/kolab-syncroton/SQL/mysql.initial.sql

also lautet unser Befehl:

mysql -u roundcube -p roundcube < /usr/share/doc/kolab-syncroton/SQL/mysql.initial.sql

Wenn alles geklappt hat sind die Syncroton-Tabellen nun angelegt.

Wichtig

Solltet ihr kein SSL für Kolab konfiguriert haben, ist es wichtig, am Client (z. B. iPhone) den SSL-Schieber auf “Aus” zu stellen. Sonst schlägt eine Verbindung komplett fehl, weil ActiveSync nicht unter https also auf Port 443 läuft.

Da die SSL-Einstellung beim iPhone erst nach der Erstellung des Accounts erreichbar ist, muss bei der Erstellung die Fehlermeldung wegen den falschen Zugangsdaten ignoriert und anschließend SSL abgestellt werden. Dann klappts auch mit dem Login.

Meine Empfehlung ist dennoch, einfach SSL einzurichten. So ist man immer auf der sichereren Seite. Für lokale Angelegenheiten (Übung usw.) kann es natürlich weggelassen werden. Zur Einrichtung von SSL bei Kolab und seinen Diensten schreibe ich sicher in Kürze noch was.

Sonstiges & Quellen

Insgesamt müssten zu den 25 Tabellen aus der Datenbank noch weitere 8 gekommen sein. Das ist vielleicht ein guter Indikator ob der Import geklappt hat. Sofort wenn der Import fertig ist funktioniert Kolab. Bei mir sind jetzt sehr bequem alle Kontakte, Mails, Notizen (das kommt zu Kolab in Version 3.3) und Kalendereinträge sowie Ereignisse synchronisiert.

Solltet Ihr Hilfe bei Kolab brauchen, zugegebenermaßen ist mit Kolab unter Debian alles bisschen stark aufwendig, meldet euch einfach.

Kolab 3 and Activesync
Bug 2902 – Syncroton can’t sync: failed to get folder states (Update: Link leider offline.)
More New Features: Notes and Accessibility (Update: Link leider offline.)

1 thought on “Kolab unter Debian mit ActiveSync (Syncroton)-Fehler “Failed to get folder states”

Leave a Reply

Your email address will not be published.