Sichern Sie Ihre gehosteten Daten
Wenn Sie Bitwarden selbst hosten, sind Sie dafür verantwortlich, Ihre eigenen Sicherungsverfahren zu implementieren, um Ihre Daten sicher zu halten.
Über gehostete Daten
Die Docker-Container von Bitwarden verwenden die Volumenzuordnung, um alle wichtigen Daten auf der Host-Maschine zu speichern, was bedeutet, dass das Stoppen Ihrer Container keine Daten löschen wird. Docker-Container hingegen gelten als vergänglich und speichern keine Daten oder Zustände.
Alle Bitwarden Daten werden auf der Host-Maschine im ./bwdata
Verzeichnis gespeichert, relativ zum Ort, an dem Sie Bitwarden installiert haben.
Gesicherte gehostete Daten
Es wird empfohlen, dass Sie das gesamte Verzeichnis ./bwdata
sichern und sicher aufbewahren. Im Falle eines Datenverlusts benötigen Sie alle oder Teile der Daten, die in diesem Verzeichnis enthalten sind, um Ihre Instanz wiederherzustellen.
Besonders wichtige Teile von ./bwdata
, die regelmäßig gesichert werden sollten, beinhalten:
./bwdata/env
- Umgebungsvariablen der Instanz, einschließlich Datenbank- und Zertifikatspasswörter../bwdata/core/attachments
- Anhänge des Tresor-Eintrags der Instanz../bwdata/mssql/daten
- Daten der Instanzdatenbank../bwdata/core/aspnet-dataprotection
– Datenschutz auf Framework-Ebene, einschließlich Authentifizierungstokens und einiger Datenbankspalten.Bitwarden wird automatisch nächtliche Backups des
mssql
Datenbank-Containers durchführen, wenn es läuft.
Nächtliche Datenbanksicherungen
Bitwarden wird automatisch nächtliche Backups der mssql
Container-Datenbank durchführen. Diese Backups werden für 30 Tage im Verzeichnis ./bwdata/mssql/backups
aufbewahrt.
Im Falle eines Datenverlusts können Sie ./bwdata/mssql/backups
verwenden, um ein nächtliches Backup wiederherzustellen.
Stellen Sie ein nächtliches Backup wieder her
Im Falle eines Datenverlusts, führen Sie die folgenden Schritte aus, um ein nächtliches Backup wiederherzustellen.
Rufen Sie Ihr Datenbank-Passwort aus dem
globalSettings__sqlServer__connectionString=...Password=
Wert ab, der inglobal.override.env
gefunden wurde.Identifizieren Sie die Container-ID des
mssql
Containers mit dem Befehldocker ps
.Führen Sie den folgenden Befehl aus, um eine Bash-Sitzung für Ihren
mssql
Docker-Container zu öffnen:Bashdocker exec -it bitwarden-mssql /bin/bash
Ihre Eingabeaufforderung sollte nun mit der identifizierten Container-ID des
bitwarden-mssql
Containers übereinstimmen.Im Container suchen Sie die Sicherungsdatei, die Sie wiederherstellen möchten.
note
Das Backup-Verzeichnis im Container ist volumenkartiert aus dem Host-Verzeichnis.
./bwdata/mssql/backups
auf der Host-Maschine wird zuetc/bitwarden/mssql/backups
im Container abgebildet.
Zum Beispiel ist eine Datei
/etc/bitwarden/mssql/backups/vault_FULL_20201208_003243.BAK
eine Sicherung, die am 08. Dezember 2020 um 00:32 Uhr erstellt wurde.Starten Sie das
sqlcmd
Dienstprogramm mit dem folgenden Befehl:Bash/opt/mssql-tools/bin/sqlcmd -S localhost -U <sa> -P <sa-password>
wo und den
Benutzer=
undPasswort=
Werten entsprechen, die inglobal.override.env
gefunden wurden.Einmal in der
sqlcmd
Utility haben Sie zwei Optionen für die Sicherung:Offline-Wiederherstellung (Bevorzugt)
Führen Sie die folgenden SQL-Befehle aus:
Bash1> use master 2> GO 1> alter database vault set offline with rollback immediate 2> GO 1> restore database vault from disk='/etc/bitwarden/mssql/backups/vault_FULL_{Backup File Name}.BAK' with replace 2> GO 1> alter database vault set online 2> GO 1> exit
Starten Sie Ihre Bitwarden-Instanz neu, um die Wiederherstellung abzuschließen.
Online-Wiederherstellung
Führen Sie die folgenden SQL-Befehle aus:
Bash1> RESTORE DATABASE vault FROM DISK = '/etc/bitwarden/mssql/backups/vault_FULL_20200302_235901.BAK' WITH REPLACE 2> GO
Starten Sie Ihre Bitwarden-Instanz neu, um die Wiederherstellung abzuschließen.