KeePass-Datenbanken per Dropbox synchronisieren mit KeeCloud

Seit Jahren nutze ich das KeePass-Plugin KeeCloud, um meine Passwortdatei mit Hilfe von Dropbox über mehrere Geräte hinweg zu synchronisieren. Hier eine kleine Anleitung zum Setup von KeeCloud und KeePass in meinem Szenario.

Advertisements

Ich verwende KeePass zur Verwaltung meiner Passwörter. Da ich auf mehreren PCs, Notebooks, Handys und Tablets unterwegs bin, synchronisiere ich die Passwort-Datenbank über alle Geräte hinweg. Seit mehreren Jahren nutze ich das KeePass-Plugin KeeCloud in Verbindung mit Dropbox zur zentralen Speicherung meiner Passwortdatei. Das KeeCloud-Update auf Version 1.2.1.11 mit Unterstützung der Dropbox API v2 ermöglicht es mir, mein bewährtes Setup weiterhin zu nutzen.

Durch die Abschaltung der Dropbox API v1 vor einigen Tagen musste ich mich erstmals seit Jahren wieder aktiv mit KeeCloud beschäftigen. Bisher lief die Lösung einwandfrei und völlig ohne Eingriff nach der erstmaligen Einrichtung. Da einige Benutzer von KeeCloud über Schwierigkeiten nach dem Update berichten, möchte ich mein Einsatzszenario und die durchgeführten Konfigurationsschritte skizzieren – bei mir läuft KeePass in Verbindung mit KeeCloud und Dropbox völlig problemlos.

Ich musste den unten beschriebenen Prozess (URL Credential Wizard) nach dem Update auf KeeCloud 1.2.11 einmal manuell durchführen (obwohl ich mit der vorherigen Version von KeeCloud bereits meine Credentials abgespeichert hatte) – vermutlich, um in diesem Schritt auf Dropbox die Authorisierung zur Nutzung der neuen API durch KeeCloud zu erteilen.

Mein Szenario

Meine wesentliche Anforderung ist es, auf allen Windows-Rechnern beim Aufruf von KeePass und nach Eingabe des Masterpassworts – ohne weitere manuelle Schritte – stets die aktuellste Version der Passwortdatenbank zu öffnen. Beim Schließen von KeePass möchte ich, dass die aktualisierte Passwortdatei automatisch wieder auf Dropbox landet.

Ich verwende auf Windows-Geräten derzeit KeePass 2.36 in Verbindung mit KeeCloud 1.2.1.11. Auf mobilen Endgeräten (iOS – iPhone / iPad sowie Android) nutze ich MiniKeePass (erhältlich u.a. für iOS und Android) – sehr spartanisch, aber für meinen Geschmack ausreichend, da ich auf diesen Geräten v.a. Passwörter herauskopieren möchte, aber keine Aktualisierungen an meiner KeePass-Datenbank vornehmen möchte.

Einmalige Einrichtung

Nach der Installation KeePass und KeeCloud habe ich zunächst den URL Credential Wizard (im Menü unter „Extras“) verwendet und „Dropbox“ ausgewählt.

KeeCloud - URL Wizzard

Anschließend öffnet sich ein Browser-Fenster und ich logge mich bei Dropbox ein. Dropbox weist mich darauf hin, dass KeeCloud auf meine Dateien und Ordner in Dropbox zugreifen möchte.

DropBox - Authentifizierung

Nach einem Klick auf „Zulassen“ zeigt mir Dropbox den erzeugten Schlüssel an, den ich per Copy&Paste in den URL Credential Wizard von KeePass übertrage. Dass im anschließenden Screen ein „leerer“ Benutzername erscheint, führt nicht zu Problemen (entgegen der Vermutung in manchen Foren).

KeeCloud - Credential Configuration

Ich klicke auf „Save as Entry“, worauf der soeben erzeugte Dropbox-Schlüssel innerhalb von KeePass als Eintrag mit Namen „KeeCloud Dropbox credentials“ abgespeichert wird. Achtung: Bei mir passierte nach dem Klick auf „Save as Entry“ manchmal scheinbar nichts – abgespeichert wurde der Eintrag bei mir jedoch trotzdem immer!

KeePass - Dropbox credentials entry

Anschließend richte ich in KeePass zwei Trigger ein (unter Extras –> Trigger)

  1. Beim Schließen der Datenbank soll die Datei mit Dropbox synchronisiert werden, falls Änderungen vorgenommen wurden
  2. Beim Öffnen der Datenbank soll die Datei aus Dropbox synchronisiert werden

Für den Trigger (1) verwende ich folgende Einstellungen

Trigger 2 - EigenschaftenTrigger 2 - EreignisseTrigger 2 - BedingungenTrigger 2 - Aktionen

Ich hatte zunächst versucht, im Reiter „Ereignisse“ das Ereignis „Datenbank schließen (nach dem Speichern)“ zu verwenden – das funktioniert aber nicht: Die Synchronisierung beim Schließen von KeePass findet nicht statt. Eigentlich auch logisch, denn nach dem Speichern liegt eben keine ungespeicherte Änderung mehr vor, so dass die Bedingung nicht erfüllt ist…

Beim Hinzufügen der Aktion verwende ich folgende Einstellungen

Trigger 2 - Aktion - Details

Im Feld „IO-Verbindung – Benutzername“ steht der Name des oben erzeugten Passwort-Eintrags für Dropbox. Im Feld „IO-Verbindung – Passwort“ habe ich 1234 eingetragen, weil ich nichts besseres wusste. Dies ist definitiv nicht mein Passwort, aber es funktioniert so, da die notwendigen Informationen aus dem KeePass-Eintrag „KeeCloud Dropbox Credentials“ übernommen werden.

Für den Trigger (2) verwende ich folgende EinstellungenTrigger 1 - EigenschaftenTrigger 1 - EreignisseTrigger 1 - BedingungenTrigger 1 - Aktionen

Das Ergebnis ist das von mir gewünschte Szenario – bei jedem Start von KeePass synchronisiert KeeCloud die Datenbank mit Dropbox – und beim Schließen von KeePass auch, falls Änderungen vorgenommen wurden.

Nachwort – warum so kompliziert?

Beim Update auf die aktuelle KeeCloud-Version habe ich mir auch nochmal die Frage gestellt, warum ich die Passwortdatei nicht einfach in einen (z.B. per Dropbox oder OneDrive) synchronisierten Ordner in meinem Dateisystem ablege. Die ehrliche Antwort: Der Mechanismus funktioniert so seit Jahren genau nach meinen Vorstellungen. „Never change a running system“ 😉

Ich freue mich über Kommentare, wie Ihr Eure Passwörter synchronisiert und warum ich ggf. doch von KeeCloud auf die „einfache“ Lösung über das Dateisystem und die anschließende Synchronisierung durch Dropbox bzw. OneDrive umschwenken sollte.

 

 

 

 

11 Kommentare zu „KeePass-Datenbanken per Dropbox synchronisieren mit KeeCloud“

  1. Vielen Dank, das hat mir den Tag gerettet. Ich verwende eine ähnliche Umgebung, Windows, Ipad, Android über DropBox synchronisiert. Ich wäre nie auf die Idee gekommen den KeePass Eintrag als Username zu verwenden. 🙂 Auch habe ich bisher manuell synchronisiert. Die Trigger hab ich gleich mal so übernommen. Auf dem Ipad verwende ich KeePass Touch , derzeit 1.6.8 . Damit lassen sich auch recht angenehm Einträge erzeugen, für mich unumgänglich, da sich insbesondere neue Web-Logins meist auf dem Tablet ergeben.

  2. Auch von meiner Seite vielen Dank für deine Hilfe. Hatte bisher KPDataSave im Einsatz was, meines Erachtens nach, nur stumpf die Datenbank überschreibt (statt zu synchronisieren) und mit Umstellung der Dropbox API nicht zurecht kam.
    Ein lohnenswerter Hinweis an dieser Stelle wäre noch der Einsatz eines Key Files als zweiten (passiven) Faktor zur Verschlüsselung der Datenbank. Sinnvollerweise legt man diesen Schlüssel nur auf den Geräten ab auf denen die Datenbank entschlüsselt werden soll (und nicht beim File Hoster).
    Cheers!

  3. Danke für den guten Beitrag, der sogar im offiziellen KeeCloud-Wiki verlinkt ist:
    https://bitbucket.org/devinmartin/keecloud/wiki/Home

    Hatte das gleiche Setup auch schon seit Jahren, musste aber mit der Umstellung auf die neue Dropbox-API nochmal die Erinnerung auffrischen, wie die Zusammenhänge waren :-).

    Im übrigen würde ich KeeCloud immer der Synchronisierung über’s Dateisystem vorziehen, da KeeCloud auf Ebene einzelner Einträge synchronisiert, während der Dropbox-Client nur Dateien kennt. Damit kann man sich u.U. schon mal Änderungen überschreiben, wenn der Sync eine Weile nicht geklappt hat (warum auch immer) oder man eine Keepass-DB mit jemand teilt und dadurch an unterschiedlichen Rechnern „parallel“ (also ohne vollen Sync dazwischen) zwei unterschiedliche Einträge hinzugefügt/bearbeitet werden. Mit Dropbox kann man dann zwar Vorversionen wiederherstellen, aber das Zusammenführen der Änderungen muss man aufwendig manuell machen.

    1. Achja, unter Android kann ich übrigens Keepass2Android wärmstens empfehlen, dass nativ mit Dropbox synchronisiert, das Bearbeiten von Einträgen ermöglicht und (optional) eine praktische „Quick-Unlock“ Funktion bietet.

    2. > Hatte das gleiche Setup auch schon seit Jahren, musste aber mit der Umstellung auf die neue Dropbox-API nochmal die Erinnerung auffrischen, wie die Zusammenhänge waren :-).
      Ja, das ging mir ganz genauso…

      Die „echte“ Synchronisierung (statt einfach nur ein Überschreiben) der Passwortdatei ist auch aus meiner Sicht der große Vorteil von KeeCloud. Der Unterschied ist glaube ich vielen Durchschnittsanwendern von KeePass (und Dropbox) gar nicht bewusst.

    1. In meinem Beispiel verwende ich für beide Trigger die Aktion „Aktive Datenbank mit einer Datei/URL synchronisieren“. Ein weiterer Klick auf „Bearbeiten“ öffnet die Konfiguration der Aktion. Ins Feld „Datei / URL“ gebe ich dropbox:// ein (natürlich ohne die spitzen Klammern), wobei der Dateiname eben der Dateiname in Dropbox ist. In diesem Beispiel liegt die Passwortdatei im obersten Hauptordner („Root“) bei Dropbox. Prinzipiell sollte es funktionieren, als URL soetwas zu verwenden wir dropbox:/// – ich habe allerdings gelesen, dass dies bei einigen Usern nicht funktioniert. Ich selbst habe es noch nicht mit Unterordnern ausprobiert, sondern die Passwortdatei in den oberste Hauptordner in Dropbox abgelegt.

      1. Oh, ich sehe gerade, dass ein paar Sonderzeichen in der Darstellung meiner Antwort weggefiltert werden und daher die Darstellung evtl. unklar ist. Daher meine Antwort nochmals in leicht editierter Form, ohne Sonderzeichen:

        In meinem Beispiel verwende ich für beide Trigger die Aktion „Aktive Datenbank mit einer Datei/URL synchronisieren“. Ein weiterer Klick auf „Bearbeiten“ öffnet die Konfiguration der Aktion. Ins Feld „Datei / URL“ gebe ich dropbox://Dateiname.kdbx ein, wobei Dateiname eben der Dateiname in Dropbox ist. In diesem Beispiel liegt die Passwortdatei im obersten Hauptordner („Root“) bei Dropbox. Prinzipiell sollte es funktionieren, als URL soetwas zu verwenden wir dropbox://Ordner/Dateiname.kdbx – ich habe allerdings gelesen, dass dies bei einigen Usern nicht funktioniert. Ich selbst habe es noch nicht mit Unterordnern ausprobiert, sondern die Passwortdatei in den obersten Hauptordner in Dropbox abgelegt.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s