Passwörter sicher in der eigenen Cloud verwalten
Zentrale Passwortverwaltung mit Docker auf dem eigenen Server/Raspberry betreiben ist leichter als gedacht.
Es scheint, dass auch heute noch das selbe Passwort für fast alle Dienste im Internet verwendet wird. Obwohl nun auch die großen Anbieter versuchen einen einfachen Standard zu etablieren, scheint auch dies keinen Anklang zu finden.
Google Passkeys
Passkey könnte eine gute Alternative sein, einen sicheren Zugang zu seinen Daten herzustellen. Die Vorteile werden überall betont: Einfach und sicher.
Man muss Google natürlich großes Vertrauen entgegenbringen, dass die Daten nicht genauso missbraucht werden, wie bei Microsoft. Der Konzern aus Redmond hatte zuletzt die persönlichen Zugangsdaten zu privaten und dienstlichen Mail-Konten genutzt, um Firmendaten und private Mails in seine Cloud zu kopieren. Aus Sicht des Datenschutzes wohl eher bedenklich.
Wer mich kennt, hat sicherlich bemerkt, dass ich meine Daten lieber selbst schütze. Gerade dabei spielt die Nutzung komplexer Passwörter eine große Rolle. Doch wie soll man sich diese dann merken? Am bequemsten wäre natürlich, sich keine mehr merken zu müssen. Wie kann das jedoch zuverlässig und sicher sein?
Die Lösung: Bitwarden
Ähnlich wie Keypass werden auch hier alle Passwörter zentral verwaltet. Bitwarden ist jedoch ein Dienst im Internet, dem wir wieder vertrauen müssen. Wir werden jedoch diesen Dienst im Internet selbst bereitstellen, was den Vorteil hat, dass dabei ausschließlich Komponenten genutzt werden, für die wir selbst verantwortlich sind. Und ganz ehrlich: Ich vertraue mir selbst mehr, als Google oder Apple etc..
Wie nutze ich diese zentrale Passwortverwaltung?
Es gibt viele Clients, die genutzt werden können. Als Browser-Plugin, oder auch als Android-App.
Das gute an Bitwarden ist, dass es erkennt, welches Passwort benötigt wird, und dieses direkt anbietet. Egal, ob auf einer Webseite oder für eine Banking-App.
Wenn ich eine Webseite besuche, die einen Login erfordert, bietet Bitwarden mir an, diese Felder auszufüllen:
Die Login-Daten hat Bitwarden beim ersten Besuch der Webseite gelernt, sofern man die Frage mit "ja" beantwortet hat. Dabei kann Bitwarden unterstützen, starke Passwörter zu generieren.
Das einzige Passwort, dass man sich noch merken muss, ist das für Bitwarden. Ich verwende hierzu eine Klavier-Fingerübung. So kommen schnell viele Zeichen zustande, die aus allen Zeichentypen bestehen. Auf meinem Android-Phone nutze ich dann einfach Biometrie, damit Bitwarden die Zugangsdaten eintragen kann.
Bitwarden-Server erstellen
Wir haben schon viele Services im Internet eingerichtet. Dieser unterscheidet sich nicht davon. Den Bitwarden-Service richten wir wieder als Docker-Container ein, den wir hinter unserern Reverse-Proxy hängen, um gültige HTTPS-Zertifikate zu erhalten.
Wir fügen folgenden Abschnitt in unser docker-compose.yml
Datei hinzu:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
volumes:
- ./vaultwarden:/data/
depends_on:
- nginx-proxy-manager
expose:
- "80"
restart: unless-stopped
environment:
- SIGNUPS_ALLOWED=false
# - SIGNUPS_ALLOWED=true
- WEBSOCKET_ENABLED=true
- ADMIN_TOKEN=%$$%$Hier_kommt_was_schoen_komplexes_hin!%%$%
labels:
- com.centurylinklabs.watchtower.monitor-only=true
networks:
- web
Um einen neuen User anlegen zu können, muss natürlich SIGNUPS_ALLOWED
auf true
gesetzt werden. Damit sich fremde Nutzer nicht ebenfalls Konten auf dem Server anlegen, setzen wir diese Variable später wieder auf false
.
Mittels docker-compose up -d
starten wir den Container. Und schon bietet dieser dem Reverse-Proxy auf Port 80 seine Dienste an. Jetzt müssen wir nur noch die Webseite im Internet anbieten. Dazu gehen wir wieder auf unseren nginx-proxy-manager:
Wir hinterlegen folgende Daten:
- Unseren Domainnamen
bitwarden.meine-domain.de
- Den Namen des Containers
vaultwarden
- Den Port, den der Container exponiert
80
- Einen groben Schutz des Services
Dann fordern wir ein Zertifikat für die gewählte Domain an:
Ein Klick auf Request a new Certificate
und anschließend auf Save
gibt den Dienst im Internet frei.
Wir rufen mit dem Browser unsere URL auf, und legen uns einen Account an:
Nachdem dies erledigt ist, ändern wir SIGNUPS_ALLOWED
auf false
und tippen erneut docker-compose up -d
in die Konsole. Das aktualisiert die Umgebungsvariablen des Containers und verbietet das Neuanlegen von Konten.
Im Browser installieren wir noch das Plugin:
Auf dem SmartPhone/Tablet:
Jetzt dürfen wir nicht vergessen die URL im Plugin und der App anzugeben. Ein Detail, das ich auch nach vielen Installationen immer wieder gerne vergesse. Aber nach Eingabe der Zugangsdaten kann Bitwarden nun endlich wie oben beschrieben genutzt werden. Selbst mit TOTP.
Fazit
Die Passwörter im eigenen Keller geschützt zu wissen, sie aber dennoch auf allen Geräten synchron halten zu können, bietet den gleichen Komfort wie auch Googles Passkeys.
Ab jetzt muss ich meine Passwörter nicht mehr kennen und sie können daher auch beliebig komplex sein, da ich sie nicht mehr eintippen muss. Mein Fingerabdruck genügt.