Debian MozillaSync
Allgemein
Mozilla Firefox Sync ist seit Version 4 von Firefox fester Bestandteil des Browser's. Für Firefox Versionen <4 kann das Firefox Sync Addon (https://addons.mozilla.org/de/firefox/addon/10868/) verwendet werden. Auf dem Server wird der hier vorgestellte Firefox Syncserver (ehemals Weave) verwendet, um die Bookmarks, History, Passwörter und geöffnete Tabs zwischen verschiendenne Installationen zu synchronisieren.
Das Anlegen eines neuen Accounts, Änderung des Passwortes usw. wird komplett vom Client bzw. Sync-Plugin erledigt. Nach der Serverinstallation ist keinerlei Eingriff diesbezüglich am Server erforderlich.
Voraussetzung für Synchronisation via Internet:
- Webserver
- OpenSSL mit Wildcard Zertifkat
Installation
apt-get install python-dev mercurial make sqlite3 python-virtualenv cd /opt/ hg clone https://hg.mozilla.org/services/server-full ffsync cd ffsync make build mkdir db
Konfiguration
Sync-Server
Die Konfigurationfiles des Syncservers befinden sich im Unterordner etc/ (/opt/ffsync/etc/).
cd /opt/ffsync/
Festlegen des SQLite Datenbankfiles zum Speichern der Syncdaten:
vi etc/sync.conf
Folgende Änderungen durchführen:
[storage] backend = syncstorage.storage.sql.SQLStorage sqluri = sqlite:////opt/ffsync/db/ffsync.db ... [auth] backend = services.auth.sql.SQLAuth sqluri = sqlite:////opt/ffsync/db/ffauth.db ... fallback_node = http://IP_des_SERVER:5000
Festlegen der Emailoptionen:
vi etc/sync.conf
Folgende Änderungen durchführen:
[smtp] host = IP_des_Mailserver bzw. SMTP_Server_PROVIDER port = 25 sender = ffsync@domain.org
Optional: Syncserver aus dem Internet erreichbar
Mit obigen Einstellungen ist der Syncserver im lokalen Netzwerk unter der Adresse http://IP_des_SERVER:5000 erreichbar. Mittels Apache Reverse Proxy ist es möglich, den Syncserver auch aus dem Internet erreichbar zu machen und die Daten SSL verschlüsselt zu übertragen.
vi /etc/apache2/sites-enabled/ffsync_https.conf
Folgende Zeilen einfügen:
<VirtualHost *:443> ServerName ffsync.domain.org ProxyRequests Off <Proxy *> Order allow,deny Allow from all </Proxy> ProxyPass / http://IP_des_SERVER:5000/ <Location /> ProxyPassReverse / </Location> SSLEngine on SSLProxyEngine On SSLCertificateFile /etc/ssl/CA/certs/wildcard.pem </VirtualHost>
Apache2 neu starten:
/etc/init.d/apache2 restart
Startskript
vi /etc/init.d/ffsync
Folgende Zeilen einfügen:
#! /bin/sh ### BEGIN INIT INFO # Provides: mozillasync # Required-Start: $remote_fs $network $syslog # Required-Stop: $remote_fs $network $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start daemon at boot time # Description: Mozillasync startscript. ### END INIT INFO DIR=/opt/ffsync DAEMON="$DIR/bin/paster" OPTIONS="serve $DIR/development.ini --daemon" PID=`pidof "$DIR/bin/python"` case "$1" in start) if [ -z $PID ]; then echo "Starting Firefox-Sync" $DAEMON $OPTIONS > /dev/null else echo "Firefox-Sync already running" fi ;; stop) if [ -z $PID ]; then echo "Firefox-Sync not running" else echo "Stopping Firefox-Sync" kill -9 $PID fi restart) $0 stop sleep 1 $0 start ;; esac
Skript ausführbar machen:
chmod +x /etc/init.d/ffsync
Autostart des Syncserver beim Systemstart:
update-rc.d ffsync defaults
Syncserver starten
/etc/init.d/ffsync start
Client Konfiguration
Die Einrichtung des Clients ist selbsterklärend. Es muss lediglich die Einstellung für den Server von Firefox Sync-Server in Eigenen Sync Server verwenden.... Als Server dann entweder http://IP_des_Server:5000 oder https://ffsync.domain.org eintragen. Beim Anlegen eines neuen Accounts wird ein sog. Syncschlüssel generiert, der auf allen Clients, die mit diesem Account synchronisiert werden sollen angegeben werden muss.