Firefox-Sync - Bookmark Sync

  • Hi Leute,

    kurz vorweg um auf mein Ziel zu kommen.

    Ich mache derzeit eine Umschulung zum Fachinformatiker und habe mir dafür eine kleine Website erstellt (Informationsseite bei der ich alle möglichen Infos zentral halten möchte).

    Also Browser benutze ich eine lange Zeit den Firefox - Derzeit Version 31.

    Auf meiner Website habe ich auch Bookmarks eingebunden, mein Ziel ist es nun, dass ich Firefox-Lesezeichen sowohl im Firefox bekomme, als auch auf meiner kleinen Website - Sollten schon synchron gehalten werden sonst macht das kein Sinn.

    Meine DB-Struktur für meine Seite kann und wird ggfls. auch angepasst, dass ich alles kein Problem. Das Problem liegt eher bei dem Firefox bzw. Add-Ons jenachdem welche Lösung die bessere ist, zu meinen Ideen gleich mehr.

    Ich habe jetzt eine Woche und auch vorher schon nach Möglichkeiten gesucht, wie ich dieses Ziel erreichen kann:


    1. Der Firefox-Eigene Sync

    Seit der Version 29 besteht die Möglichkeit nicht mehr einen eigenen Server einzutragen, also habe ich mir eine ältere Version geladen in welcher ich einen eigenen Server eintragen kann (vom Prinzip her kein Problem müsste ich nur den kompletten Firefox einmal neu einrichten und dann wieder upgraden).

    Den Sync habe ich mit Weavy Minimal sowie Owncloud erfolgreich durchgeführt. Allerdings werden dabei die Daten verschlüsselt übertragen (was zwar gut ist) allerdings auch verschlüsselt abgespeichert (wo genau hier das Problem ist).

    Diese Lösung finde ich derzeit noch die beste. Gibt es eine Möglichkeit mit PHP diese verschlüsselten Bookmarks zu entschlüsseln? Dann wäre das die wahrscheinlich immernoch die sinnvollste Lösung dieses Problems (Datenbankabgleich via. Cronjob)


    2. Bookmark-Sync mit XMARKS

    Dieser ist im Prinzip von vornherein nur gescheitert (Xmarks v. 4.3). Es gab Fehlermeldungen und es kam nicht eine File sowohl am lokalen Testserver als auch am richtigen Server (mit DE-Domain) an. Mit Xmarks habe ich auch noch andere Firefox-Versionen getestet, ob es vielleicht an dem neuen liegt.
    v.32, v.31, v.28, v.21 & v.3

    Aber mit keiner Firefox-Version hat es funktioniert. Ich habe mir dann noch einen weiteren Browser installiert (Chromium - Linux-User), da es das Xmarks-AddOn auch für Chrome gibt. Xmarks installiert (allerdings v.1.....). Dort stande mir nicht einmal die Möglichkeit einen eigenen Server einzurichten.

    Ich denke diese Geschichte ist einfach nicht mehr oder nicht funktionsfähig, da Xmarks von LastPass aufgekauft wurde. Ich denke das diese Funktionen weitgehends deaktiviert wurden (zumindest habe ich das Gefühl, lasse mich aber gerne auch eines besseren belehren)


    3. Eigenes Firefox-AddOn schreiben

    Hier hatte ich mir überlegt ein eigenes Firefox AddOn selbst zu erstellen (firefox-sdk). Damit war das Ziel, die Orginal-Bookmark-Leiste komplett zu ignorieren und meine Bookmarks direkt vom Server abzufragen, wodurch ich meine eigene DB-Struktur nicht ändern muss. Allerdings bekomme ich dies auch nicht wirklich hin und ich bin mir auch ehrlich gesagt nicht sicher, ob es wie ich mir überlegt habe überhaupt funktionieren kann. Es gibt für Java zwar einen MySQL-Treiber, allerdings nach einen kleinen Java-Tuturial ist trotzdem nichts passiert. Ich blicke ehrlich gesagt mit dem firefox-sdk auch noch überhaupt nicht durch, denn ich bekomme nicht einmal eine Ausgabe beim Datei einlesen und diese auszugeben.
    Die einzigen erfolgreichen Funktionen nach einen Tut welche funktioniert haben waren Buttons mit Bild auf welchen Klick sich ein Link öffnet sowie das einbinden einer HTML-Seite, welche sobald man woanders klickt wieder weg war und auch nicht nochmal geöffnet wurde.


    4. Firefox-Source-Code ändern

    Wenn ich den entsprechenden Code im Source-Code finden würde, könnte ich denke ich auch in den neueren Versionen meinen eigenen Server als Sync-Server eintragen, sowie die Verschlüsselung entfernen. Hat damit schon jemand Erfahrung? Allerdings möchte ich weitgehend schon immer eine der aktuelleren Firefox-Versionen aus Sicherheitsgründen haben. Das heisst sobald ich eine neue Version installiere müsste ich jedes Mal den Code anpassen - Also ist das eher keine sinnvolle Lösung denke ich.


    Sorry für den vielen Text. Ich hoffe mir kann jemand helfen, mich auf einen richtigen Weg hierzu zu bringen. Den Lösungsvorschlag Nummer 1 halte ich selbst nachwievor für die beste Lösung, also wäre mir eine Lösung hierzu schon das liebste :D
    Die AddOn-Lösung wäre die zweite Wahl, allerdings kann es auch passieren, dass nach einen Firefox-Update mein AddOn einfach nicht mehr funktioniert und ich wieder Hand anlegen muss.

    Die Lösung die sich findet, sollte auf jeden Fall so sein, dass ich nicht alle paar Wochen immer wieder Änderungen machen muss, denn die Zeit habe ich neben meiner Umschulung nicht bzw. nicht immer.


    Mfg ffsync

  • ich werfe eine weitere möglichkeit in den raum: firefox erstellt einmal täglich ein backup deiner lesezeichen in form der datei "bookmarks-YYYY-MM-DD.json" in deinem profilordner aus (beziehungsweise wenn du unter about:config die einstellung browser.bookmarks.autoExportHTML auf true umstellst auch eine html datei). diese könntest du an deinen server schicken und dort in irgendeiner form parsen, wie du es benötigst...

  • Zitat von ffsync

    Seit der Version 29 besteht die Möglichkeit nicht mehr einen eigenen Server einzutragen, also habe ich mir eine ältere Version geladen in welcher ich einen eigenen Server eintragen kann (vom Prinzip her kein Problem müsste ich nur den kompletten Firefox einmal neu einrichten und dann wieder upgraden).

    Das ist so nicht korrekt. Die Server werden über about:config eingetragen.

    https://docs.services.mozilla.com/howtos/run-sync-1.5.html
    http://www.ncalexander.net/blog/2014/07/0…osted-services/ (für Android)

  • Zitat


    ich werfe eine weitere möglichkeit in den raum: firefox erstellt einmal täglich ein backup deiner lesezeichen in form der datei "bookmarks-YYYY-MM-DD.json" in deinem profilordner aus (beziehungsweise wenn du unter about:config die einstellung browser.bookmarks.autoExportHTML auf true umstellst auch eine html datei). diese könntest du an deinen server schicken und dort in irgendeiner form parsen, wie du es benötigst...

    Danke für diesen Hinweis. Diese Datei bzw. Daten sind als Backup vorhanden. Das Problem bei dieser Lösung sehe ich, dass zumindest mein PC und mein Notebook zusammen mit dem Server immer möglichst den selben stand haben. Dort wo ich Umschulung mache, könnte es theoretisch auch möglich sein, da ich mein Notebook nicht immer mit dort hin nehme (danach mache ich dort eh immer alles platt). Und ich denke, dass es ein Problem werden könnte alles gleich und Synchron zu halten.

    Noch eine Möglichkeit, die ich vorher vergessen habe, wäre ja die Datei places.sql.


    Zitat


    Das ist so nicht korrekt. Die Server werden über about:config eingetragen.

    Das ist schonmal sehr gut zu wissen. Damit fällt auf jeden Fall den Source-Code dahingehend zu verändern flach :D

    Code
    [b][u]about:config[/u][/b]
    services.sync.tokenServerURI

    Server angepasst einzutragen ist im Prinzip selbsterklärend. Ich habe gerade trotz das ich frei habe nicht allzulange Zeit, darum konnte ich noch nicht testen und in diesem Artikel habe ich dazu auch noch nichts gefunden, wie das mit der Verschlüsselung aussieht.

    Weiß das jemand ob ich diese Bookmarks auf den eigen aufgesetzten Server dann wieder entschlüsseln kann bzw. ob ich diese gleich im Klartext speichere?

    Ich werde heute Abend dann mal "schnell" einen Debian-Server in einer VM aufsetzen und den eigenen Sync-Server 1.5 testen. Natürlich wäre es trotzdem schön im Vorfeld noch 1, 2 Informationen zu bekommen, gerade was die Verschlüsselung angeht. Ich habe mich bislang ehrlich gesagt mit der Verschlüsselung nicht näher auseinandergesetzt.

    MfG

  • Guten Morgen,

    also soviele technische Daten zum onePW-Protokoll ... Ich habe ehrlich gesagt noch nicht ganz verstanden wie ich dies umsetzen muss. Bin allerdings auch noch nicht ganz soweit.

    Ich hatte vor zwei Tagen ja gesagt, dass ich den Firefox-Sync-Server 1.5 in einer Testumgebung installieren möchte. Dies habe ich getan, inkl. Auth-Server und Content-Server.

    Ergebnis:

    Der Sync-Server selbst laut Anleitung funktioniert. ( https://docs.services.mozilla.com/howtos/run-sync-1.5.html )
    Das einzige, dass ich nicht gesetzt habe war der "secret-Schlüssel". Und weitere Benutzer (allow_new_users) habe ich auf "true" gesetzt.

    Der Sync-Server legt mir sowohl beim ersten Test eine SQLite-DB an, da diese nicht mein Ziel ist, habe ich dies wie im Tuturial geändert und pymysql eingetragen. Dies funktioniert auch. Ich hatte eine leere Datenbank und beim "Synchronisieren" wurden 4 Tabellen angelegt - Leider ohne Inhalt.
    Ok. Ich hatte die Anleitungen so verstanden, dass ich nicht bedingt überhaupt einen eigenen Auth-Server benötige und wollte demnach ersteinmal den von Mozilla zum testen nutzen und nur die Daten bei mir eintragen. Aber da es nicht geht denke ich, weiß er nicht welche Daten eingetragen werden sollen. Darum habe ich dann noch den Auth-Server und den Content-Server installiert.

    https://docs.services.mozilla.com/howtos/run-fxa.html

    Beide anderen Server lassen sich zumindest ohne ERROR-Meldungen auch starten also alles scheint korrekt konfiguriert worden zu sein. Anschließend nocheinmal Anpassungen in der about:config gemacht. Ich denke irgendwie das hier mein Fehler liegt (entweder hier oder ich habe etwas übersehen bzw. muss noch Content anderweitig herunterladen).

    Das Ergebnis:

    Normalerweise sollte ich nun über den Content-Server-Host standardmäßig Port 3030 (auch erstmal nicht geändert) ein Anmeldungs/Registrierungsfenster erscheinen

    Änhlich wie dieses:https://accounts.stage.mozaws.net/signup.

    - last development
    - testing
    - stage
    - production

    Diese vier Varianten der Anmeldung stehen zumindest im README.me des fxa-content-server.

    Dies tut es aber nicht. Stattdessen bleibt mein Bildschirm "weiß".

    [attachment=0]login-firefox.png[/attachment]

    Muss ich nun noch eine index.html herunterladen? Wie oben dieser zum Beispiel? Und wenn ja wo muss ich diese dann einfügen?
    > Eine Seite hatte ich testweise heruntergeladen (29,....MB)

    Sobald ich im Firefox auf Bearbeiten, Einstellungen Sync und dann auf Registrieren oder Anmelden gehe, erscheint garnichts, also auch nicht dieses Kästchen.


    Hier mal noch die Einstellungen aus der about:config :

    Code
    identity.fxaccounts.auth.uri [b]=>[/b] http://192.168.122.105/v1
    identity.fxaccounts.remote.force_auth.uri[b] =>[/b] http://192.168.122.105/force_auth?service=sync&context=fx_desktop_v1
    identity.fxaccounts.remote.signin.uri [b]=>[/b] http://192.168.122.105/signin?service=sync&context=fx_desktop_v1
    identity.fxaccounts.remote.signup.uri [b]=>[/b] http://192.168.122.105/signup?service=sync&context=fx_desktop_v1
    identity.fxaccounts.settings.uri [b]=>[/b] http://192.168.122.105/settings

    Dann hoffe ich mal irgendwie das der Fehler in einen von den zwei Punkten liegt, andernfalls kann ich zur Aufklärung auch nocheinmal genau beschreiben was ich wie gemacht habe inkl. aller Konfigurationen.


    Mfg ffsync