Debian MozillaSync: Unterschied zwischen den Versionen

Aus Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 13: Zeile 13:


==Installation==
==Installation==
  apt-get install python-dev mercurial make sqlite3 python-virtualenv
  apt-get install python-dev git-core python-virtualenv buil-essentials
  cd /opt/
  cd /opt/
  hg clone https://hg.mozilla.org/services/server-full ffsync
  git clone https://github.com/mozilla-services/syncserver
  cd ffsync
  cd syncserver
  make build
  make build
make test
  mkdir db
  mkdir db
   
   
Zeile 24: Zeile 25:
===Sync-Server===
===Sync-Server===
Die Konfigurationfiles des Syncservers befinden sich im Unterordner etc/ (/opt/ffsync/etc/).
Die Konfigurationfiles des Syncservers befinden sich im Unterordner etc/ (/opt/ffsync/etc/).
  cd /opt/ffsync/
  cd /opt/syncserver/
 


Festlegen des SQLite Datenbankfiles zum Speichern der Syncdaten:
Festlegen des SQLite Datenbankfiles zum Speichern der Syncdaten:
  vi etc/sync.conf
  vi syncserver.ini
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
 
{{Hinweis|Die aktuelle Version des Server enthält im Konfigfile sync.conf einen Fehler, der einen Start des Servers verhindert. Die beiden backendeinträge wie oben dargestellt checken und evtl. entsprechend anpassen.}}
 
Festlegen der Emailoptionen:
vi etc/sync.conf
Folgende Änderungen durchführen:
Folgende Änderungen durchführen:
  [smtp]
  [syncserver]
  host = '''''IP_des_Mailserver''''' bzw. '''''SMTP_Server_PROVIDER'''''
  sqluri = sqlite:////opt/syncserver/db/syncserver.db
port = 25
sender = '''''ffsync@domain.org'''''




Zeile 55: Zeile 38:
  vi /etc/apache2/sites-enabled/ffsync_https.conf
  vi /etc/apache2/sites-enabled/ffsync_https.conf
Folgende Zeilen einfügen:
Folgende Zeilen einfügen:
*Apache 2.2:
  <VirtualHost *:443>
  <VirtualHost *:443>
     ServerName '''''ffsync.domain.org'''''
     ServerName '''''ffsync.domain.org'''''
Zeile 61: Zeile 45:
       Order allow,deny
       Order allow,deny
       Allow from all
       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>
*Apache 2.4:
<VirtualHost *:443>
    ServerName '''''ffsync.domain.org'''''
    ProxyRequests Off
    <Proxy *>
      Require all granted
     </Proxy>
     </Proxy>
     ProxyPass / http://'''''IP_des_SERVER''''':5000/
     ProxyPass / http://'''''IP_des_SERVER''''':5000/

Version vom 15. Mai 2015, 11:32 Uhr

Allgemein

Mozilla-Sync.png

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 git-core python-virtualenv buil-essentials
cd /opt/
git clone https://github.com/mozilla-services/syncserver
cd syncserver
make build
make test
mkdir db

Konfiguration

Sync-Server

Die Konfigurationfiles des Syncservers befinden sich im Unterordner etc/ (/opt/ffsync/etc/).

cd /opt/syncserver/

Festlegen des SQLite Datenbankfiles zum Speichern der Syncdaten:

vi syncserver.ini

Folgende Änderungen durchführen:

[syncserver]
sqluri = sqlite:////opt/syncserver/db/syncserver.db


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:

  • Apache 2.2:
<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>
  • Apache 2.4:
<VirtualHost *:443>
   ServerName ffsync.domain.org
   ProxyRequests Off
   <Proxy *>
      Require all granted
   </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.

Bulbgraph.png Hinweis:
Bei eigenen Versuchen traten immer wieder Fehlermeldungen beim Synchronisieren nach dem Start des Firefox auf. Nach manuellem Auslösen (evtl. mehrfach) eines Syncvorgangs (Menü Extras/Jetzt Synchronisieren) hat es dann geklappt.