Ich installiere Vaultwarden (Bitwarden) auf meinem Synology NAS

Mein Ziel

Ich benutze KeepassXC seit Monaten, es funktioniert perfekt, ich hatte einen Retex darauf gemacht. Ich richte meinen Passwort-Manager auf allen meinen Computern und Smartphones ein

Ich habe ein Problem mit Keepass, nämlich das Teilen von Passwörtern. Einige Passwörter müssen zwischen meiner Frau und mir geteilt werden, was mit Keepass nicht möglich ist. Wir verwenden jeweils eine Datenbank, da wir zwei Authentifizierungsmodi haben, um die Datenbank zu öffnen.

Ich suche also nach einer Lösung und Bitwarden bietet dies an, man kann eine "Organisation" erstellen, die zur Familie passt, und man kann eigene Passwörter oder gemeinsame Passwörter haben. Perfekt, das ist es, was ich suche.

Also werde ich Vaultwarden auf meinem Synology NAS in einem Container Manager-Docker installieren. Konfigurieren Sie einen Domainnamen dafür, geben Sie ihm ein Zertifikat, um https zu betreiben, wählen Sie einen anderen Port als 443, um ein wenig mehr zu sichern. Konfigurieren Sie meinen Router mit Portweiterleitungen und konfigurieren Sie Vaultwarden, damit er E-Mails senden und die Verwendung mit einem Yubikey und einer Microsoft Athentificator (TOTP)-Authentifizierung sichern kann…. feu…

Ich installiere den Vaultwarden-Docker

In Synology Container Manager auf meinem Synology NAS gehe ich zu Registrierung herunterladen vaultwarden/server

Ich nehme die "Latest"-Version und lade sie herunter.

Nach dem Laden klicke ich auf Ausführen

Ich ändere einige Parameter wie im obigen Bild.

Ich wechsle schnell zu File Station, um einen vaultwarden-Ordner zum Docker-Ordner hinzuzufügen.

Wenn ich richtig verstanden habe, sollte die Verwendung eines in File Station erstellten Ordners die Daten nicht zerstören, wenn der Docker gelöscht wird, überprüfen…

Ich konfiguriere die Ports von vaultwarden 3012 und 3013 sowie die Datendatei, die ich gerade in File Station erstellt habe

Ich beende den Assistenten und drücke dann die blaue Schaltfläche Ausgeführt, um mit der Erstellung des Hafenarbeiters zu beginnen.

Auf der Registerkarte „Container“, perfekt, wird ein grüner Punkt angezeigt, der anzeigt, dass er gestartet wird.

Ich stelle sicher, dass die NAS-Firewall den Zugriff nicht blockiert

Damit die Firewall meines NAS (die aktiviert werden sollte) Port 3013 nicht blockiert, werde ich sie autorisieren (Sicherheit / Firewall / Regeln ändern)

dann

Ich kann überprüfen, ob vaultwarden auf die ip-adresse meiner syno und port 3013 startet.

Das passt nicht zu mir, ich möchte von außen darauf zugreifen können, dass die Verbindung in https erfolgt und dass anstelle einer IP ein Domainname verwendet wird.

Ich werde meinen Domainnamen anpassen

Ich gehe zu Externer Zugriff / DDNS / Hinzufügen eines DDNS

Ich nehme den Synology-Dienst in Anspruch, alles andere ist einfach auszufüllen, ich kreuze das Kästchen an, um ein Zertifikat zu erhalten, und aktiviere Heartbeat, um so besorgt zu sein.

Die Erstellung des Pakets dauert einige Minuten, und hier ist mein erstellter DDNS-Zugang:

Ich überprüfe die Port-Routings meines Routers

Ich gehe zu meinem Router, Netzwerk-Center / Port-Übertragung und ich umleiten Ports zu meinem NAS

Der 1999-Port wird der öffentliche https-Port sein, der zum 1999-Port des NAS geht, ich richte dies manuell ein.

Die Ports 3012 und 3013 werden automatisch konfiguriert, dann sprechen Syno NAS und Syno Router miteinander.

Ich richte einen Synology Reverse Proxy ein

Auf dem NAS werde ich Systemsteuerung / Login-Portal / Erweitert / Reverse Proxy

Ich nehme Port 1999, den https-Port (ursprünglich also 443), und sende alles an Port 3013 von localhost.

Mein Domainname ist vaultwarden.xxxxxxx.familyds.com und daher Vaultwarden joingnable auf https://vaultwarden.xxxxxxx.familyds.com:1999

Es ist perfekt, die Verbindung funktioniert in https mit einem Domainnamen und einem gültigen Zertifikat.

Ich aktiviere den Yubikey-Dienst

Um mein Yubikey mit VaultWarden zu verwenden, müssen Sie den Dienst aktivieren und eine ID und einen Schlüssel von der Yubico-Website abrufen

Ich gehe auf https://upgrade.yubico.com/getapikey/

Geben Sie einfach Ihre E-Mail-Adresse ein, klicken Sie auf das Yubikey OTP-Feld, drücken Sie den Yubiket-Button und bestätigen Sie dann.

Ich hole mir zwei Informationen

Ich werde diese beiden Informationen in Umgebungsvariablen unterteilen.

Ich werde die Umgebungsvariablen konfigurieren

Die Umgebungsvariablen werden in Container Manager auf der Registerkarte Container konfiguriert, beenden den Container vaultwarden und gehen dann zu Einstellungen.

Um meinen Yubikey-Schlüssel zuzulassen, füge ich diese beiden Variablen hinzu:

  • YUBICO_CLIENT_ID: erstes Feld oben erholen
  • YUBICO_SECRET_KEY: zweites Feld oben erholen

Um meine Domain zu sichern, füge ich folgende Variable hinzu:

Um E-Mails senden zu können (am bequemsten, um Gäste zu senden und E-Mails zu überprüfen)

  • SMTP_HOST: smtp.free.fr
  • SMTP_FROM: die E-Mail-Adresse, an die die E-Mails versendet werden
  • SMTP_PORT: 587
  • SMTP_SECURITY: Starttls
  • SMTP_USERNAME: Vorname@free.fr
  • SMTP_PASSWORD: das Passwort des Kontos

Ich erstelle ein erstes "Familienkonto"

Um den Nutzern keinen Administratorzugriff zu gewähren, verwende ich eine Familien-E-Mail, um ein erstes Konto und eine erste Organisation zu erstellen.

Dieses Konto wird eine "Eigentümer"-Rolle haben.

Ich füge ‚Nutzer‘-Konten mit den E-Mails der Familienmitglieder hinzu, jeder kann dann seine E-Mail validieren und sein Konto erstellen. Das proprietäre Profil muss sie dann akzeptieren.

Ich verhindere, dass neue Konten hinzugefügt werden.

Um noch mehr Sicherheit zu bieten, werde ich das Hinzufügen neuer Konten blockieren.

Dazu füge ich, wie im vorletzten Absatz, eine weitere Umweltvariable hinzu.

Die Variable ist

  • SIGNUPS_ALLOWED: false

Wird ein Konto hinzugefügt, wird Folgendes abgelehnt:

Ich installiere das Browser-Add-In auf Brave

Ich werde die Erweiterung meines Browsers laden

Nach der Installation muss ich den "selbst gehosteten" Server auf meinem NAS konfigurieren.

Gegenüber von Verbindung auf Ich muss spezifizieren selbst gehostet.

Ich gebe die https-Adresse in meinem reverse DNS unter Angabe des Ports an.

Dann logge ich es mit dem Haupt-E-Mail/Passwort meines Benutzerkontos und finde alle meine Anmeldedaten.

Ich sichere das Familienkonto (Eigentümer) mit dem Yubikey

Ich klicke auf Verwalten vor Yubico.

Ich drücke den Rahmen unter Yubikey 1, schließe meinen Yubikey an, drücke den Knopf und validiere.

Das ist ok, Yubikey ist meine zweite Authentifizierung.

Bevor ich diesen Bildschirm verlasse, erzeuge und drucke ich den Wiederherstellungscode.

Ich sichere das Benutzerkonto mit Yubikey und Microsoft Authentificator

Das Nutzerkonto wird in der Browser-Erweiterung, aber auch im Smartphone gespeichert.

So gilt:

  • Auf dem Computer ist die Kontoeröffnung mit dem Passwort + Yubikey am einfachsten.
  • Auf dem Smartphone kann das Konto entweder über das Passwort + Yubikey (in NFC) oder über das Passwort + Microsoft Authentificator (TOTP) eröffnet werden.

Ich richte einen sicheren Administrationszugriff ein

Vaultwarden bietet eine Administrationsseite an, die für ihre Nutzung gesichert werden muss.

Es kann eine ebenerdige Umgebungsvariable verwendet werden, dies wird jedoch nicht empfohlen.

Es ist besser, einen Hash in Argon2 zu verwenden, also werde ich die Website verwenden https://argon2.online/

In diesem Beispiel verwende ich 3Mssk7Hi4cb́wzUC7fgTR als Eingabetext, klicke auf das Zahnrad, um dem Hash Salz hinzuzufügen, kreuze Argon2id an und erhalte das Ergebnis „ $Argon2id$v=19$m=16,t=2,p=1$c0JJWHVQamhGQzF6MXZudg$vlmd1dpgBVgwU4BM7RUUVw“ werde ich dies in die Umgebungsvariable des Containers einfügen (zur Erläuterung siehe einige vorangegangene Absätze)

  • ADMIN_TOKEN: $Argon2id$v=19$m=16,t=2,p=1$c0JJWHVQamhGQzF6MXZudg$vlmd1dpgBVgwU4BM7RUUVw

Ich greife auf die Vaultwarden-Konfigurationsseite zu

Ich gehe auf https://vaultwarden.xxxxx.familyds.com:1999/admin

Ich setze das Passwort, d. h. den Eingabetext für den Hash, also 3Mssk7Hi4cb́wzUC7fgTR in mein Beispiel.

Ich wandere ein wenig durch die Config, es ist ein wenig eine verborgene Seite von vaultwarden, die es zu entdecken gilt.

Ich organisiere eine Datensicherung von Vaultwarden

Ich installiere Synology Hyper Backup

Auf meinem NAS im Paketcenter installiere ich Hyper Backup.

Ich öffne eine dedizierte Dropbox mit einer dedizierten Adresse

Ich isoliere diese Daten daher.

Ich aktiviere die doppelte Authentifizierung für den Zugriff auf meine neue Dropbox.

Ich starte Hyper Backup und programmiere das Backup

Ich kreuze an Dossiers und Pakete Dann wähle ich den Modus Dropbox

Die Verbindung zwischen Dropbox und Hyper Backup dauert 2s und ich werde wählen, wo ich sichern soll, also werde ich einen NAS-Backup-Ordner und ein NAS-Verzeichnis erstellen (um den Inhalt vage zu halten).

Ich wähle dann die Ordner aus, die gesichert werden sollen

Ich interessiere mich nicht für die Sicherung von Anwendungen, ich kreuze nichts an.

Ich beende den letzten Bildschirm mit einem clientseitigen Verschlüsselungspasswort. Ich lade das Passwort und die mitgelieferte PEM-Datei herunter und verwahre sie sorgfältig.

Am Ende des Assistenten stimme ich dem Start der ersten Sicherung zu

Ich werde einen Blick auf Dropbox werfen, alles ist gut gelaufen.

Ich habe etwas Zeit, bevor ich die Dropbox ausfülle.

Ich teste mein Backup

Zur Erinnerung: Eine Sicherung, die nicht in der Wiederherstellung getestet wurde nützt nichts !!!!!!!!!

Ich halte den Vaultwarden-Docker an und gehe dann zur File Station.

Ich benenne meinen docker/vaultwarden-Ordner in vaultwarden 27-05-2024 um und erstelle einen leeren vaultwarden-Ordner neu.

Ich wiederhole den Vaultwarden-Docker und gehe dann auf https://vaultwarden.xxxxx.familyds.com:1999/admin

auf der Registerkarte „Users“:

Es ist perfekt, alles ist leer, also habe ich alle meine Daten verloren. vaultwarden hat sich zurückgesetzt und seine Standarddatendateien erneut injiziert:

Natürlich lösche ich alles aus Sicherheitsgründen und werde mein letztes Backup wiederherstellen, ich starte Hyper Backup.

Es ist vorbei, ich werde den Hafenarbeiter neu starten und … testen, meine Daten sind zurückgekehrt, alles funktioniert einwandfrei. Perfekt, mein Backup ist machbar.

 

Biblio