Linux Handbuch manuelle Bereitstellung
Dieser Artikel führt Sie durch das Verfahren, Bitwarden manuell auf Ihrem eigenen Server zu installieren und einzusetzen. Bitte überprüfen Sie die Dokumentation zur Software-Release-Unterstützung von Bitwarden.
Warnung
Manuelle Installationen sollten nur von fortgeschrittenen Benutzern durchgeführt werden. Fahren Sie nur fort, wenn Sie sehr vertraut mit Docker-Technologien sind und mehr Kontrolle über Ihre Bitwarden-Installation wünschen.
Manuelle Installationen haben nicht die Fähigkeit, bestimmte Abhängigkeiten der Bitwarden-Installation automatisch zu aktualisieren. Wenn Sie von einer Version von Bitwarden auf die nächste upgraden, sind Sie verantwortlich für Änderungen an erforderlichen Umgebungsvariablen, Änderungen an nginx default.conf
, Änderungen an docker-compose.yml
und so weiter.
Wir werden versuchen, diese in den Veröffentlichungsnotizen auf GitHub hervorzuheben. Sie können auch Änderungen an den Abhängigkeitsvorlagen überwachen, die vom Bitwarden-Installationsskript auf GitHub verwendet werden.
Bevor Sie mit der Installation fortfahren, stellen Sie bitte sicher, dass Docker Engine und Docker Compose auf Ihrem Server installiert und einsatzbereit sind und dass Ihr Gerät die erforderlichen Systemspezifikationen erfüllt.
Wenn Sie Ihre eigenen Bitwarden-Bilder erstellen, sind offizielle .NET Core Runtime-Bilder (herunterladen von DockerHub) der gleichen Hauptversionsnummer wie Bitwarden-Bilder erforderlich.
Minimum | Empfohlen | |
---|---|---|
Prozessor | x64, 1,4GHz | x64, 2GHz Dual-Core |
Erinnerung | 2GB RAM | 4GB RAM |
Speicher | 12GB | 25GB |
Docker-Version | Motor 19+ und Komponieren 1.24+ | Motor 19+ und Komponieren 1.24+ |
Wir empfehlen, Ihren Server mit einem dedizierten Bitwarden-Dienstkonto zu konfigurieren, von dem aus Sie Bitwarden installieren und ausführen können. Dies wird Ihre Bitwarden-Instanz von anderen Anwendungen isolieren, die auf Ihrem Server laufen.
Diese Schritte sind von Bitwarden empfohlene Best Practices, aber nicht erforderlich. Für weitere Informationen siehe Docker's Nachinstallations-Schritte für Linux Dokumentation.
Erstellen Sie einen Bitwarden-Benutzer:
Bashsudo adduser bitwarden
Legen Sie ein Passwort für den Bitwarden-Benutzer fest:
Bashsudo passwd bitwarden
Erstellen Sie eine Docker-Gruppe (falls diese noch nicht existiert):
Bashsudo groupadd docker
Fügen Sie den Bitwarden-Benutzer zur Docker-Gruppe hinzu:
Bashsudo usermod -aG docker bitwarden
Erstellen Sie ein Bitwarden-Verzeichnis:
Bashsudo mkdir /opt/bitwarden
Setzen Sie Berechtigungen für das
/opt/Bitwarden
Verzeichnis:Bashsudo chmod -R 700 /opt/bitwarden
Legen Sie den Bitwarden-Benutzerbesitz für das Verzeichnis
/opt/bitwarden
fest:Bashsudo chown -R bitwarden:bitwarden /opt/bitwarden
Warnung
Wenn Sie einen Bitwarden-Benutzer & Verzeichnis erstellt haben, führen Sie die folgenden Schritte als Bitwarden
-Benutzer aus dem /opt/bitwarden
Verzeichnis aus. Installieren Sie Bitwarden nicht als Root, da Sie während der Installation auf Probleme stoßen werden.
Um Bitwarden herunterzuladen und Bitwarden Server Assets zu konfigurieren:
Laden Sie eine abgestumpfte Version von Bitwardens Abhängigkeiten (
docker-stub.zip
) von den Veröffentlichungsseiten auf GitHub herunter. Zum Beispiel:Bashcurl -L https://github.com/bitwarden/server/releases/download/v<version_number>/docker-stub-US.zip \ -o docker-stub-US.zip
Erstellen Sie ein neues Verzeichnis namens
bwdata
und extrahieren Siedocker-stub.zip
darin, zum Beispiel:Bashunzip docker-stub-US.zip -d bwdata
Einmal entpackt, wird das Verzeichnis
bwdata
dem entsprechen, was die Volumenzuordnung der Dateidocker-compose.yml
erwartet. Sie können, wenn Sie möchten, den Standort dieser Zuordnungen auf dem Host-Computer ändern.In
./bwdata/env/global.override.env
, bearbeiten Sie die folgenden Umgebungsvariablen:globalSettings__baseServiceUri__vault=
: Geben Sie die Domain Ihrer Bitwarden-Instanz ein.globalSettings__sqlServer__ConnectionString=
: Ersetzen Sie dasZUFÄLLIGES_DATENBANK_PASSWORT
durch ein sicheres Passwort, das Sie in einem späteren Schritt verwenden werden.globalSettings__identityServer__certificatePassword
: Legen Sie ein sicheres Zertifikat-Passwort für die Verwendung in einem späteren Schritt fest.globalSettings__internalIdentityKey=
: Ersetzen SieRANDOM_IDENTITY_KEY
durch eine zufällige Schlüsselzeichenfolge.globalSettings__oidcIdentityClientKey=
: Ersetzen SieRANDOM_IDENTITY_KEY
durch eine zufällige Schlüsselzeichenfolge.globalSettings__duo__aKey=
: Ersetzen SieRANDOM_DUO_AKEY
durch eine zufällige Schlüsselzeichenfolge.globalSettings__installation__id=
: Geben Sie eine Installations-ID ein, die Sie von https://bitwarden.com/host abgerufen haben.globalSettings__installation__key=
: Geben Sie einen Installations-Schlüssel ein, den Sie von https://bitwarden.com/host abgerufen haben.Tipp
Betrachten Sie zu diesem Zeitpunkt auch das Festlegen von Werten für alle
globalSettings__mail__smtp__
Variablen und füradminSettings__admins
. Dies wird den SMTP-Mailserver konfigurieren, der verwendet wird, um Einladungen an neue Mitglieder der Organisation zu senden und den Zugang zum Systemadministrator-Portal bereitzustellen.
Aus
./bwdata
, generieren Sie eine.pfx
Zertifikatsdatei für den Identität-Container und verschieben Sie diese in das zugeordnete Volumenverzeichnis (standardmäßig,./bwdata/Identität/
). Zum Beispiel, führen Sie die folgenden Befehle aus:Bashopenssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout identity.key -out identity.crt -subj "/CN=Bitwarden IdentityServer" -days 10950
und
Bashopenssl pkcs12 -export -out ./identity/identity.pfx -inkey identity.key -in identity.crt -passout pass:IDENTITY_CERT_PASSWORD
Ersetzen Sie in dem obigen Befehl
IDENTITY_CERT_PASSWORD
durch das Passwort des Zertifikats, das in Schritt 3 erstellt und verwendet wurde.Kopieren Sie
identity.pfx
in das Verzeichnis./bwdata/ssl
.Erstellen Sie ein Unterverzeichnis in
./bwdata/ssl
mit dem Namen Ihrer Domain, zum Beispiel:Bashmkdir ./ssl/bitwarden.example.com
Stellen Sie ein vertrauenswürdiges SSL-Zertifikat und einen privaten Schlüssel im neu erstellten Unterverzeichnis
./bwdata/ssl/bitwarden.example.com
bereit.Hinweis
Dieses Verzeichnis ist dem NGINX-Container unter
/etc/ssl
zugeordnet. Wenn Sie kein vertrauenswürdiges SSL-Zertifikat bereitstellen können, stellen Sie die Installation mit einem Proxy vor, der den Bitwarden-Client-Anwendungen einen HTTPS-Endpunkt bereitstellt.In
./bwdata/nginx/default.conf
:Ersetzen Sie alle Instanzen von
bitwarden.example.com
durch Ihre Domain, einschließlich imContent-Security-Richtlinien
Header.Setzen Sie die Variablen
ssl_certificate
undssl_certificate_key
auf die Pfade des Zertifikats und des privaten Schlüssels, die in Schritt 7 bereitgestellt wurden.Führen Sie eine der folgenden Aktionen durch, abhängig von Ihrer Zertifikateinrichtung:
Wenn Sie ein vertrauenswürdiges SSL-Zertifikat verwenden, setzen Sie die Variable
ssl_trusted_certificate
auf den Pfad zu Ihrem Zertifikat.Wenn Sie ein selbstsigniertes Zertifikat verwenden, kommentieren Sie die Variable
ssl_trusted_certificate
aus.
In
./bwdata/env/mssql.override.env
, ersetzen SieRANDOM_DATABASE_PASSWORD
mit dem Passwort, das in Schritt 3 erstellt wurde.In
./bwdata/web/app-id.json
, ersetzen Siebitwarden.example.com
mit Ihrer Domain.In
./bwdata/env/uid.env
, setzen Sie die UID und GID derBitwarden
Benutzer und Gruppe, die Sie früher erstellt haben, damit die Container unter ihnen laufen, zum Beispiel:BashLOCAL_UID=1001 LOCAL_GID=1001
Starten Sie Ihren Bitwarden-Server mit dem folgenden Befehl:
Bashdocker compose -f ./docker/docker-compose.yml up -d
Überprüfen Sie, ob alle Container korrekt laufen:
Bashdocker ps
Gratulation! Bitwarden läuft jetzt unter https://your.domain.com
. Besuchen Sie den Web-Tresor in Ihrem Browser, um zu bestätigen, dass er funktioniert.
Sie können sich jetzt ein neues Konto registrieren und anmelden. Sie müssen SMPT-Umgebungsvariablen konfiguriert haben (siehe Umgebungsvariablen), um die E-Mail-Adresse für Ihr neues Konto zu verifizieren.
Wenn Sie planen, eine Bitwarden Organisation selbst zu hosten, sehen Sie eine Organisation selbst hosten um zu beginnen.
Für weitere Informationen siehe FAQs zum selbst gehosteten.
Die Aktualisierung eines selbst gehosteten Servers, der manuell installiert und bereitgestellt wurde, unterscheidet sich von dem Standard-Aktualisierungsverfahren. Um Ihre manuell installierte Server-Aktualisierung durchzuführen:
Laden Sie das neueste
docker-stub.zip
Archiv von den Veröffentlichungsseiten auf GitHub herunter.Entpacken Sie das neue
docker-stub.zip
Archiv und vergleichen Sie dessen Inhalt mit dem, was derzeit in Ihrembwdata
Verzeichnis ist, und kopieren Sie alles Neue zu den bereits vorhandenen Dateien inbwdata
.
Überschreiben Sie Ihr bereits vorhandenes bwdata- Verzeichnisnicht
mit dem Inhalt des neuerendocker-stub.zip-
Archivs, da dies alle von Ihnen durchgeführten benutzerdefinierten Konfigurationsarbeiten überschreiben würde.Führen Sie den folgenden Befehl aus, um Ihren Server mit Ihrer aktualisierten Konfiguration und den neuesten Containern neu zu starten:
Bashdocker compose -f ./docker/docker-compose.yml down && docker compose -f ./docker/docker-compose.yml up -d
Änderungen an dieser Seite vorschlagen
Wie können wir diese Seite für Sie verbessern?
Bei technischen, Rechnungs- und Produktfragen wenden Sie sich bitte an den Support