SjälvhotellInstallations- och distributionsguiderHamnarbetare

Windows Offline-distribution

Den här artikeln kommer att leda dig genom proceduren för att installera och distribuera Bitwarden till din egen Windows-server i en offline eller luftgap miljö. Vänligen granska

.

warning

Manual installations should be conducted by advanced users only. Only proceed if you are very familiar with Docker technologies and desire more control over your Bitwarden installation.

Manual installations lack the ability to automatically update certain dependencies of the Bitwarden installation. As you upgrade from one version of Bitwarden to the next you will be responsible for changes to required environment variables, changes to nginx default.conf, changes to docker-compose.yml, and so on.

We will try to highlight these in the

. You can also monitor changes to the
dependency templates
used by the Bitwarden installation script on GitHub.

Krav

ª - Docker Compose kan installeras via Docker Desktop, som inkluderar Engine och Compose.

.

Under den här installationen måste du avmarkera alternativet Använd WSL2 istället för Hyper-V (rekommenderas).

Se dessutom till att följande krav är uppfyllda:

  • Genom att använda en maskin med internetåtkomst har du laddat ner den senaste filen docker-stub-US.zip eller docker-stub-EU.zip från Bitwarden Server-förvarets versionssida och överfört den här filen till din server.

  • En offline SMTP-server är konfigurerad och aktiv i din miljö.

  • (Valfritt)

    är installerade och redo att användas på din server. Du kan använda ett självsignerat certifikat istället för OpenSSL om du vill.

Kapslad virtualisering

Att köra Bitwarden på en Windows Server kräver användning av kapslad virtualisering. Kontrollera din Hypervisors dokumentation för att ta reda på om kapslad virtualisering stöds och hur du aktiverar den.

tip

If you are running Windows Server as an Azure VM, we recommend a Standard D2s v3 Virtual Machine running Windows Server 2022, which meets all

including support for nested virtualization. You will also need to select Security Type: Standard rather than the default Trusted launch virtual machines.

Installationsprocedur

Konfigurera din domän

Som standard kommer Bitwarden att betjänas via portarna 80 (http) och 443 (https) på värddatorn. Öppna dessa portar så att Bitwarden kan nås inifrån och/eller utanför nätverket. Du kan välja att välja olika portar under installationen.

tip

If you are using Windows Firewall, Docker Desktop for Windows will not automatically add an exception for itself in Windows Firewall. Add exceptions for TCP ports 80 and 443 (or chosen alternative ports) to prevent related errors.

Vi rekommenderar att du konfigurerar ett domännamn med DNS-poster som pekar på din värddator (till exempel bitwarden.example.com), särskilt om du betjänar Bitwarden över internet.

Skapa Bitwarden lokal användare och katalog

Öppna PowerShell och skapa en Bitwarden lokal användare genom att köra följande kommando:

Bash
PS C:\> $Password = Read-Host -AsSecureString

Efter att ha kört kommandot ovan anger du önskat lösenord i textinmatningsdialogrutan. Efter att ha angett ett lösenord, kör följande kommando:

Bash
New-LocalUser "Bitwarden" -Password $Password -Description "Bitwarden Local Admin"

Som den nyskapade användaren, skapa en Bitwarden-mapp under C:\:

Bash
PS C:\> mkdir Bitwarden

När du har installerat Docker Desktop, navigera till InställningarResurserFildelning och lägg till den skapade katalogen (C:\Bitwarden) till resurslistan. Välj Tillämpa och starta om för att tillämpa dina ändringar.

Vi rekommenderar att du loggar in som den nyskapade användaren innan du slutför alla efterföljande procedurer i detta dokument.

Konfigurera din maskin

Så här konfigurerar du din maskin med de tillgångar som krävs för din Bitwarden-server:

tip

Once you have

, complete the following as the Bitwarden user.

  1. Skapa en ny katalog i C:\Bitwarden med namnet bwdata och extrahera docker-stub-US.zip (eller docker-stub-EU.zip) till den.

    När den väl har packats upp kommer bwdata-katalogen att matcha vad docker-compose.yml-filens volymmappning förväntar sig. Du kan, om du vill, ändra platsen för dessa mappningar på värddatorn.

  2. I bwdata\env\global.override.env, redigera följande miljövariabler:

    • globalSettings__baseServiceUri__vault=: Ange domänen för din Bitwarden-instans.

    • globalSettings__sqlServer__ConnectionString=: Ersätt RANDOM_DATABASE_PASSWORD med ett säkert lösenord för användning i ett senare steg.

    • globalSettings__identityServer__certificatePassword=: Ställ in ett säkert certifikatlösenord för användning i ett senare steg.

    • globalSettings__internalIdentityKey=: Ersätt RANDOM_IDENTITY_KEY med en slumpmässig alfanumerisk sträng.

    • globalSettings__oidcIdentityClientKey=: Ersätt RANDOM_IDENTITY_KEY med en slumpmässig alfanumerisk sträng.

    • globalSettings__duo__aKey=: Ersätt RANDOM_DUO_AKEY med en slumpmässig alfanumerisk sträng.

    • globalSettings__installation__id=: Ange ett installations-id hämtat från

      .

    • globalSettings__installation__key=: Ange en installationsnyckel hämtad från

      .

    • globalSettings__pushRelayBaseUri=: Denna variabel ska vara tom. Se

      för mer information.

      tip

      At this time, consider also setting values for all globalSettings__mail__smtp__ variables and for adminSettings__admins. Doing so will configure the SMTP mail server used to send invitations to new organization members and provision access to the

      .

      .

  3. Generera ett identity.pfx-certifikat för identitetsbehållaren. Du kan använda OpenSSL eller använda vilket verktyg som helst för att generera ett självsignerat certifikat. Om du använder OpenSSL, kör följande kommandon:

    Bash
    openssl req -x509 -newkey rsa:4096 -sha256 -nodes -keyout identity.key -out identity.crt -subj "/CN=Bitwarden IdentityServer" -days 10950

    och

    Bash
    openssl pkcs12 -export -out ./identity/identity.pfx -inkey identity.key -in identity.crt -passout pass:IDENTITY_CERT_PASSWORD

    I kommandot ovan, ersätt IDENTITY_CERT_PASSWORD med certifikatlösenordet som skapades och användes i steg 2.

  4. Flytta identity.pfx till den mappade volymkatalogen (som standard, .\bwdata\identity).

  5. Kopiera identity.pfx till katalogen .\bwdata\ssl.

  6. Skapa en underkatalog i .\bwdata\ssl med namnet för din domän.

  7. Tillhandahåll ett pålitligt SSL-certifikat och en privat nyckel i den nyskapade underkatalogen .\bwdata\ssl\bitwarden.example.com.

    note

    This directory is mapped to the NGINX container at \etc\ssl. If you can't provide a trusted SSL certificate, front the installation with a proxy that provides an HTTPS endpoint to Bitwarden client applications.

  8. I .\bwdata\nginx\default.conf:

    1. Ersätt alla instanser av bitwarden.example.com med din domän, inklusive i rubriken Content-Security-Policy.

    2. Ställ in variablerna ssl_certificate och ssl_certificate_key till sökvägarna för certifikatet och den privata nyckeln som tillhandahålls i steg 6.

    3. Utför en av följande åtgärder, beroende på din certifikatinställning:

      • Om du använder ett pålitligt SSL-certifikat, ställ in variabeln ssl_trusted_certificate till sökvägen till ditt certifikat.

      • Om du använder ett självsignerat certifikat, kommentera ssl_trusted_certificate-variablerna.

  9. I .\bwdata\env\mssql.override.env, ersätt RANDOM_DATABASE_PASSWORD med lösenordet som skapades i steg 2.

  10. I .\bwdata\web\app-id.json, ersätt bitwarden.example.com med din domän.

Ladda ner och överför bilder

Så här hämtar du docker-bilder för användning på din offlinedator:

  1. Från en internetansluten dator laddar du ner alla ghcr.io/bitwarden/image_name:senaste docker-bilderna, enligt listan i docker-compose.yml-filen i docker-stub.zip.

  2. Spara varje bild i en .img-fil, till exempel:

    Bash
    docker image save -o mssql.img ghcr.io/bitwarden/mssql:latest
  3. Överför alla .img-filer till din offline-dator.

  4. Ladda varje .img-fil på din offlinedator för att skapa dina lokala docker-bilder, till exempel:

    Bash
    docker image load -i mssql.img

Starta din server

Starta din Bitwarden-server med följande kommando:

Bash
docker compose -f ./docker/docker-compose.yml up -d

Kontrollera att alla behållare körs korrekt:

Bash
docker ps
List showing Healthy Containers

Grattis! Bitwarden är nu igång på https://din.domän.com. Besök webbvalvet i din webbläsare för att bekräfta att det fungerar.

Du kan nu registrera ett nytt konto och logga in. Du måste ha konfigurerade SMTP-miljövariabler (se

) för att verifiera e-postadressen för ditt nya konto.

Nästa steg:

  • Om du planerar att själv vara värd för en Bitwarden-organisation, se

    för att komma igång.

  • För ytterligare information se vanliga frågor

    om självhotell.

Uppdatera din server

Uppdatering

. Så här uppdaterar du din manuellt installerade server:

  1. Ladda ner det senaste docker-stub.zip-arkivet från

    .

  2. Packa upp det nya docker-stub.zip-arkivet och jämför dess innehåll med det som för närvarande finns i din bwdata-katalog, kopiera allt nytt till de redan existerande filerna i bwdata.
    Skriv inte över din redan existerande bwdata-katalog med innehållet i det nyare docker-stub.zip-arkivet, eftersom detta skulle skriva över alla anpassade konfigurationsarbeten du har gjort.

  3. Ladda ner de senaste behållarbilderna och överför dem till din offlinedator

    .

  4. Kör följande kommando för att starta om din server med din uppdaterade konfiguration och de senaste behållarna:

    Bash
    docker compose -f ./docker/docker-compose.yml down && docker compose -f ./docker/docker-compose.yml up -d