Debian Funambol

Aus Wiki
Zur Navigation springen Zur Suche springen
Warning.png Achtung:

Anleitung ist veraltet.


Einleitung

Um die Kontakte, Kalender und Aufgaben mit Desktop(Thunderbird, Outlook)- und Mobil-Clients(Windows Mobile, Handys) zu synchronisieren, bietet sich der Syncserver Funambol (www.funambol.com) mit dem Open-Xchange Connector geradezu an. Somit stehen in sämtlichen Clients und optional auf dem Groupware-Server immer die selben Daten zur Verfügung.

Funambol ist ein mächtiger Sync-ML Server, für den es zahlreiche Synchronisations Clients gibt. Als Beispiele seien hier nur Thunderbird, Outlook, IPhone und Windows Mobile Geräte genannt.

Optionale Voraussetzung:


Installation

Standardmäßig verwendet Funambol die Datenbank Hypersonic. Nachdem evtl. bereits ein MySQL-Server vorhanden ist, empfiehlt es sich, auch für Funambol eine MySQL-Datenbank zu verwenden, damit nich noch eine zusätzliche Datenbank Engine laufen, und damit Ressourcen verbrauchen muss.

Download der nötigen Komponenten

Bulbgraph.png Hinweis:
Funambol steht in einer 32Bit und 64Bit Version zur Verfügung. Unter einem 64Bit Linux System sollte die 64Bit Funambol Version installiert werden.
cd /usr/local/src
mkdir funambol
cd funambol
wget ftp.gwdg.de/pub/linux/mysql/Downloads/Connector-J/mysql-connector-java-5.1.18.tar.gz

32Bit-Version:

wget http://sourceforge.net/projects/funambol/files/bundle/v10/funambol-10.0.3.bin
chmod +x funambol-10.0.2.bin

64Bit-Version:

wget http://sourceforge.net/projects/funambol/files/bundle/v10/funambol-10.0.3-x64.bin
chmod +x funambol-10.0.3-x64.bin

Fanmabol installieren

32Bit-Version:
./funambol-10.0.3.bin
64Bit-Version:
./funambol-10.0.3-x64.bin

Die Licence-Agreement-Frage mit yes beantworten, nachdem diese komplett durchgescrollt, bzw. mit q beendet wurde. Directory to extract Funambol [/opt] <return to accept>? mit Return bestätigen Do you want to start the server? [yes or no]: no

Optional: MySQL-Datenbank

Falls bereits eine MySQL-Datenbank-Engine installiert ist, oder in Zukunft geplant ist, diese einzusetzen, empfiehlt es sich die Funambol Datenbank in MySQL anzulegen. Dazu muß MySQL ntürlich installiert sein (→ siehe hier).

Anlegen der Datenbank (funambol-pwd mit dem gew. Passwort ersetzen):

mysql -u root -p

'SQL_PWD eingeben

create database funambol;
GRANT ALL PRIVILEGES ON funambol.* TO 'funambol'@'localhost' IDENTIFIED BY 'funambol-pwd';
exit

Installieren der MySQL-Java-Komponente:

tar xvf mysql-connector-java-5.1.18.tar.gz
cp mysql-connector-java-5.1.18/mysql-connector-java-5.1.18-bin.jar /opt/Funambol/tools/jre-1.6.0/jre/lib/ext

Umstellen des Datenbanktyps von Hypersonic auf MySQL :

vi /opt/Funambol/ds-server/install.properties

Datenbanktyp festlegen:

dbms=mysql

Folgende Zeilen mit einem Kommentarzeichen (#) versehen, um diese zu deaktivieren:

#jdbc.classpath=../tools/hypersonic/lib/hsqldb.jar
#jdbc.driver=org.hsqldb.jdbcDriver
#jdbc.url=jdbc:hsqldb:hsql://localhost/funambol
#jdbc.user=sa
#jdbc.password=

und stattdessen folgende Zeilen dahinter einfügen:

jdbc.classpath=/opt/Funambol/tools/jre-1.6.0/jre/lib/ext/mysql-connector-java-5.1.18-bin.jar
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost/funambol?characterEncoding=UTF-8
jdbc.user=funambol
jdbc.password=funambol-pwd

Module installieren

cd /opt/Funambol/ds-server
../bin/install
  • Falls Mysql-Datenbank verwendet wird, die Frage recreate Datenbank mit y beantworten
  • Die Frage zum Installieren der Datenbank für den content-provider mit y beantworten
  • Die Frage zum Installieren der Datenbank für den email-connector mit y beantworten
  • Die Frage zum Installieren der Datenbank für das foundation Modul mit y beantworten
  • Die Frage zum Installieren der Datenbank für das Modul phones-support mit y beantworten
  • Die Frage zum Installieren der Datenbank für das Modul webdemo mit y beantworten


Konfiguration

Konfiguration, damit die Datenbank-Verbindung nach einiger Zeit der Inaktivität nicht beendet wird, was zu Fehlern und Synchronisationsverlust führen würde.

Warning.png Achtung:

Nur erforderlich für MySQL-Datenbankverbindung. Die Änderung sollte nicht durchgeführt werden für die Hypersonic-Datenbank, da es mit dieser Datenbank zu Fehler führen würde.

vi /opt/Funambol/config/com/funambol/server/db/db.xml

Folgende Zeilen einfügen vor dem XML-Tag </object>:

  <void method="setProperty">
   <string>remove​AbandonedTimeout<​/string>
   <string>55</string>
  </void>


Startscript

Damit Funambol beim Systemstart automatisch startet, müssen die Startscripte angelegt und eingerichtet werden:

ln -s /opt/Funambol/bin/funambol /etc/init.d/funambol

Startscript anpassen:

vi /etc/init.d/funambol

Folgende Zeilen nach #!/bin/sh einfügen:

### BEGIN INIT INFO
# Provides:          funambol
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Should-Start:      $syslog
# Should-Stop:       $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start/stop funambol
# Description:       Start/stop Funambol a Sync server
### END INIT INFO

FUNAMBOL_HOME zuweisen:

FUNAMBOL_HOME="/opt/Funambol"

Optional für MySQL-Verbindung: Deaktivieren der Hypersonic Datenbankengine:

COMED=false


Funambol starten:

/etc/init.d/funambol start

Funambol automatisch beim Systemstart ausführen:

update-rc.d funambol defaults


Funambol Admintool

Windows-Admintool

Hostname/IP: IP_Des_Servers
Port: 8080
Username: admin
Password: sa

Den Button Login anklicken Nun sollte in der linken Liste der Funambol Server erscheinen.


Linux-Admintool

Das Linux Admintool wurde auf dem Server mit installiert. Dieses kann einfach auf den lokalen Linux-PC kopiert und gestartet werden.

  • Sun Java 6 auf dem lokalen PC installieren
  • Terminalfenster öffnen und folgende Befehle eingeben:
mkdir Funambol
scp -r root@IP_des_Server:/opt/Funambol/admin Funambol/
  • Starten des Admintools
sudo Funambol/admin/bin/funamboladmin 

Falls Java nicht gefunden wird (Fehlermeldung: Cannot find java. Please use the --jdkhome switch.) folgenden Befehl verwenden (für Ubuntu 10.10. Für andere Linux Distribution/Version Pfad für Sub java evtl. anpassen):

sudo Funambol/admin/bin/funamboladmin --jdkhome /usr/lib/jvm/java-6-sun/jre
  • Doppelklick auf Funambol Administration Tool
  • Im erscheinenden Popup-Fenster folgende Eingaben machen:
Hostname/IP: IP_Des_Servers
Port: 8080
Username: admin
Password: sa

Den Button Login anklicken Nun sollte in der linken Liste der Funambol Server erscheinen.


Administrative Einstellungen

Neuen User anlegen

  • Die Baum-Liste des Servers erweitern und auf Users doppelklicken, um zur Userverwaltung zu gelangen.
  • Button Add anklicken
Die Daten des neuen Users eingeben - z.B. User Tux.
In der Liste Roles User selektieren
Button Save anklicken um den User anzulegen
Evtl. den Button Cancel anklicken, um ins User Hauptmenü zurückzukehren
  • Den Button Search klicken
Eine Liste aller User erscheint. Der neu angelegte User sollte neben den bereits existenten Usern admin und guest erscheinen.


Passwort des Admin Users ändern:

  • Die Baum-Liste des Servers erweitern und auf Users doppelklicken, um zur Userverwaltung zu gelangen.
  • Den Button Search klicken
Eine Liste aller definierter User erscheint.
admin doppelklicken bzw. admin einfach anklicken und Button Edit anwählen
Neues Passwort unter Password und Confirm Password eintragen


Optional HTTPS-Verschlüsselung

Wenn eine Synchronisierung via Internet durchgeführt werden soll, empfiehlt es sich dies nur verschlüsselt zu tun. Aber auch in einem lokalen Netzwerk hat die Verschlüsselung ihre Berechtigung. Während die unverschlüsselte Synchronisierung via Port 8080 erfolgt, geschieht dies bei SSL-Verschlüsselung via Port 8443. Allerdings führt die Funamboleigene SSL-Verschlüsselung sehr häufig zu Problemen, sodass hier ein Apache HTTPS Reverse Proxy zum Einsatz, sodass der SSL-Standardport 443 verwendet wird, der evtl. bereits für Apache im DSL-Router freigegeben ist.

Voraussetzung:

Apache Virtualhost

vi /etc/apache2/sites-enabled/funambol_https.conf


<VirtualHost *:443>
  ServerName sync.domain.org
  ProxyRequests Off
  <Proxy *>
     Order allow,deny
     Allow from all
  </Proxy>
  ProxyPass / http://IP_des_Server:8080/
  <Location />
     ProxyPassReverse /
  </Location>
  SSLEngine on
  SSLProxyEngine On
  SSLCertificateFile /etc/ssl/CA/certs/wildcard.pem
</VirtualHost>


Apache neustarten:

/etc/init.d/apache2 restart

Clients Synchronisieren

Für die Synchronisierung von Clients stehen Zahlreiche Plugins zur Verfügung (siehe hier: https://www.forge.funambol.org/download/). Im folgenden wird die Synchronisation für Thunderbird, Outlook, Windows Mobil und SyncML fähige Handy's erläutert.

Bulbgraph.png Hinweis:

Beim ersten Syncvorgang, sollten bei allen folgenden Beschreibungen zunächst nur Kontakte synchronisiert werden, da erst die Zeitzone (→ siehe hier) der Endgeräte korrekt eingestellt werden sollte. Dies ist wichtig für die Synchronisierung von Terminen, da es durch Zeitzonenunterschiede zu Veschiebungen +/- einige Stunden kommen kann. Erst wenn die Zeitzone am Endgerät selbst und in der Adminoberfläche korrekt eingestellt sind, sollte die Synchronisierung von Terminen vorgenommen werden.


Thunderbird Synchronisieren

Falls das Addon Lightning (https://addons.mozilla.org/de/thunderbird/addon/2313) installiert ist, bietet Thunderbird neben der Emailfunktionalität einen Kalender und Aufgaben, ähnlich wie MS Outlook.

Bulbgraph.png Hinweis:
Bevor die Synchronisation gestartet wird, sollte mindestens ein Kalender angelegt sein, um diesen zu synchronisieren.


Den Thunderbird Sync-Client (MozillaSync) für Funambol (Windows oder Linux) unter: https://mozilla-plugin.forge.funambol.org downloaden und lokal speichern. Thunderbird öffnen und das Menü Extras/Add-ons aufrufen. Den Button Installieren...' anwählen und die eben heruntergeladene Datei auswählen.

Nach der Installation Thunderbird neu starten, um das Add-On zu aktivieren.

Das Menü Extras/Funambol sync..." anwählen. Im sich öffnenden Fenster das Menü Tools/Options anwählen Unter Funambol/Account folgende Einstellungen vornehmen:

Location: http: http://IP_Des_Servers:8080/funambol/ds
Location: https: https://sync.domain.org/funambol/ds
Username: Tux
Password: Tux_pwd

Unter Funambol/Sync folgende Einstellungen vornehmen:

Contacts: Ja (angeklickt)
Calendar: Ja (angeklickt)
Tasks: Ja (angeklickt)
Synchronize: every 5 minutes
Synchronize at startup: Ja (angeklickt)
Contacts:Details anklicken und folgende Einstellungen vornehmen:
Current: Persönliches Adressbuch
Remote Name: card
Mit OK übernehmen
Falls Addon Lightning installiert ist:
Calendar/Tasks: Details anklicken und folgende Einstellungen vornehmen:
Current: Einen zuvor angelegten Kalender aus der Liste auswählen
Calendar remote name: cal
Tasks remote name: task
Mit OK übernehmen
Mit dem Button OK die Optionen übernehmen und das Optionsfenster schließen.

Im Funambol Sync-Fenster nun Sync All anwählen. Nun sollten sämtliche Kontakte, Termine und Aufgaben synchronisiert werden.

Outlook Synchronisieren

Funambol Outlooksync unter https://www.forge.funambol.org/servlets/OCNDirector?id=FunambolOutlookSyncClient downloaden. Heruntergeladenes Setup-Tool starten um den Sync-Clienten zu installieren. Nach der Installation startet der Sync-Client automatisch. Das Menü Tools/Options anwählen. Im Bereich Account folgende Einstellungen vornehmen:

Location: http: http://IP_Des_Servers:8080/funambol/ds
Location: https: https://sync.domain.org/funambol/ds
Username: Tux
Password: Tux_pwd

Im Bereich Sync folgende Einstellungen vornehmen:

Contacts: Ja (angeklickt)
Calendar: Ja (angeklickt)
Tasks: Ja (angeklickt)
Notes: ? (Nach Bedarf)
Contacts:Details anklicken und folgende Einstellungen vornehmen:
Sync Direction: Two Way
Include Subfolder: Ja (angeklickt)
Remote name: scard
Mit OK übernehmen
Calendar: Details anklicken und folgende Einstellungen vornehmen:
Sync Direction: Two Way
Include Subfolder: Ja (angeklickt)
Sync Outlook Appointments: Je nach Bedarf
Remote name: cal
Dataformat: vCalendar
Mit OK übernehmen
Tasks: Details anklicken und folgende Einstellungen vornehmen:
Sync Direction: Two Way
Include Subfolder: Ja (angeklickt)
Sync Outlook Appointments: Je nach Bedarf
Remote name: task
Dataformat: vCalendar
Mit OK übernehmen
Mit dem Button OK die Optionen übernehmen und das Optionsfenster schließen.

Im Funambol Sync-Fenster nun Sync All anwählen. Nun sollten sämtliche Kontakte, Termine und Aufgaben synchronisiert werden.


SyncML fähiges Handy

Zahlreiche neuere Handy's sind SyncML fähig und können damit direkt mit dem Funambol-Server synchronisiert werden. Eine Software auf dem PC ist nicht erforderlich, die meist ohnehin nur mit Outlook synchronisieren kann. Ein weiterer Vorteil ist, dass die Synchronisierung auch aus der Ferne -z.B. via GPRS/GSM/UMTS von unterwegs, oder via Internet mit einem WLAN fähigen Handy an einem WLAN Hotspot - erfolgen kann. Weitere Alternative ist via Bluetooth (→ siehe hier).

Aufgrund der Vielzahl verschiedener Handy's und dadurch bedingt bedienvarianten, kann hier keine allgemeingültige Anleitung gegeben werden. Es wird beispielhaft die Einrichtung eines Sony Ericsson Handy's demontriert.

  • Menü Einstellungen/Verbindungen/Synchronisierung
  • Neues Konto
  • SyncML
  • Name: z.B. Funambol-Server
  • Reiter Allgemein
Serveradresse: http: http://IP_Des_Servers:8080/funambol/ds (funktioniert natürlich nur bei lokaler Bluetooth-Verbindung)
Serveradresse: https: https://sync.domain.org/funambol/ds (funktioniert auch bei Internet/GSM/GPRS/UMTS)
Benutzername: Tux
Kennwort: Tux_pwd
  • Reiter Anwendungen
Kontakte, Kalender und Aufgaben aktivieren
  • Reiter Anw.-Einstellungen
Kontakte
Datenbankname: card
Benutzername: leer lassen
Kennwort: leer lassen
Kalender
Datenbankname: cal
Benutzername: leer lassen
Kennwort: leer lassen
Aufgaben
Datenbankname: task
Benutzername: leer lassen
Kennwort: leer lassen
  • Reiter Erweitert
Sync-Intervall: Je nach Bedarf
Verbindung Zulassen: Heimatnetz
Verbindung
Verbinden mit: WLAN,GPRS/GSM/UMTS,Bluetooth-Verbindung je nach gewünschter Verbindungsart
Lokale Verb zulassen: Ein
Geschützte Verbindung: bei http-Verbindung: aus / bei https-Verbindung: ein
Remoteinitialisierung: Immer fragen
Remotesicherhet: leer lassen

Verbindung herstellen Synchronisierung starten.


Windows Mobile Synchronisieren

Funambol SyncClient für Windwos Mobile PDA (nicht Smartphone) unter https://www.forge.funambol.org/servlets/OCNDirector?id=FunambolPPCSyncClient downloaden. PDA mit PC per Active Sync verbinden und heruntergeladenes Setup-Programm ausführen, um den Sync-Clienten zu installieren. Evtl. sind Eingaben am PDA nötig, um den Installationsvorgang abzuschließen.

Nach der Installation startet am PDA das Konfigtool und frägt Server und Benutzernamen ab.

Serveradresse: http: http://IP_Des_Servers:8080/funambol/ds
Benutzername: Tux
Kennwort: Tux_pwd

Nach dem Bestätigen dieser Daten wird versucht eine Verbindung zum Server aufzubauen. Sollte dies fehlerfrei möglich sein, wird die Hauptseite des Syncclients angezeigt. Falls ein Fehler auftritt, die Zugangsdaten korrigieren (Menü/Konto)

Menü/Einstellungen aufrufen

E-Mail: Nein (Nicht angeklickt)
Kontakte: Ja (angeklickt)
Kalender: Ja (angeklickt)
Aufgaben: Ja (angeklickt)
Notitzen: ? (Nach Bedarf)
Briefcase:Nein (Nicht angeklickt)
Synchronisationsoptionen:
Push-Service: Funktioniert nicht
Manuell: Synchronisation muß manuell aktiviert werden
Interall basiert: Regelmäßige Synchronisation, z.B. alle 15 Minuten
Innerhalb dem Menü/Einstellungen das Menü Menü/Erweitert aufrufen und folgende Einstellungen vornehmen:
Sicherheit: SSL-Verschlüsselung
E-Mail: beliebig, da nicht verwendet
Kontakte: card
Kalender: cal
Aufgaben: task
Notitzen: snote
Briefcase: beliebig, da nicht verwendet
Data Format:
Kalender: vcalendar
Aufgaben: vcalendar

Einstellungsfenster schließen und Alles Synch. in der linken unteren Ecke anwälen. Die Synchronisiertung sollte fehlerfrei erfolgen.


Einstellen der Zeitzone

Für die Synchronisierung von Kalendern und Terminen ist die Zeitzone entscheidend. Wenn die Zeitzonen der Geräte und Server nicht übereinstimmen, können Versetzungen der Termine +/- einige Stunden auftreten.

Zunächst am Endgerät, das synchronisiert werden soll, die Zeitzone richtig einstellen.

Nachdem ein Gerät einmal Kontakt zum Server hatte, wird ein Device-Eintrag angelegt, der unter der Admin-Oberfläche unter Devices erreichbar ist.

Adminoberfläche öffnen und einen Doppelklick auf Devices durchführen Dann auf den Button Search klicken. Eine Liste aller Devices erscheint nun. Das Device Doppelklicken Als Timezone Europe/Berlin auswählen Die Änderung mittels Button Save übernehmen. Evtl. den Button Cancel anklicken, um in die Device-Liste zurückzukehren