Bitwarden/Vaultwarden Selfhosted Password Manager
Bitwarden/Vaultwarden Selfhosted Password Manager
Vorwort
In diesem Beitrag findest du eine Step-by-Step Anleitung zur Installation eines Bitwarden/Vaultwarden Docker Containers.
Voraussetzungen
- Docker-Host
- Installation siehe: Docker Grundinstallation
- Reverse Proxy
- Installation siehe: Traefik Grundinstallation
Erstellung Docker-Compose Projekt
Im ersten Schritt ist das Docker-Compose Projekt zu erstellen.
1
2
3
4
mkdir bitwarden
cd bitwarden
mkdir data
touch docker-compose.yml
1
sudo nano docker-compose.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Version: '3'
services:
traefik:
image: vaultwarden/server:latest
container_name: bitwarden
restart: always
ports:
- 5010:80
- 3012:3012
environment:
- ADMIN_TOKEN=TOKEN #Mit eigenem Secret zu ersetzten
- TZ=Europe/Berlin
volumes:
- ./data:/data:rw
Traefik SSL Konfiguration
Um einen sicheren Zugriff via SSL zu gewährleisten, ist die Traefik Konfiguration anzupassen.
1
sudo nano config.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#DOMAIN ist durch die eigene zu ersetzen.
#IP-Adresse ist durch das gewünschte Ziel zu ersetzen.
http:
#region routers
routers:
passwordmanager:
entryPoints:
- "https"
rule: "Host(`passwordmanager.DOMAIN.de`)"
middlewares:
- default-headers
- https-redirect
- rate-limit
- error-pages
tls:
options: tls-options
service: passwordmanager
#endregion
#region services
services:
passwordmanager:
loadBalancer:
servers:
- url: "https://IP-DOCKERHOST:5010"
passHostHeader: true
#endregion
middlewares:
https-redirect:
redirectScheme:
scheme: https
permanent: true
rate-limit:
ratelimit:
average: 200
burst: 100
default-headers:
headers:
frameDeny: true
sslRedirect: true
browserXssFilter: true
contentTypeNosniff: true
forceSTSHeader: true
stsIncludeSubdomains: true
stsPreload: true
stsSeconds: 15552000
customFrameOptionsValue: SAMEORIGIN
customRequestHeaders:
X-Forwarded-Proto: https
gzip:
compress: {}
tls:
options:
tls-options:
minVersion: VersionTLS12
sniStrict: true
cipherSuites:
- TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305
- TLS_AES_128_GCM_SHA256
- TLS_AES_256_GCM_SHA384
- TLS_CHACHA20_POLY1305_SHA256
curvePreferences:
- CurveP521
- CurveP384
1
sudo docker restart traefik
Eine Erstellung des ersten Logins ist nun via den folgenden Optionen möglich.
- https://passwordmanager.DOMAIN.de (ReverseProxy)
- http://IP-DockerHost:5010 (Direkter Zugriff)
Login Admin Portal
Ein Login im Admin Portal, ist unter den folgenden Optionen möglich.
- https://passwordmanager.DOMAIN.de/admin (ReverseProxy)
- http://IP-DockerHost:5010/admin (Direkter Zugriff)
Empohlene Anpassungen im Admin Portal
Folgende Anpassungen sind im Admin Portal zu empfehlen.
Desktop Client und Browser Extension
Sämtliche Clients und Extensions können hier heruntergeladen werden.
Nach der Installation kann der Client/die Extension wie folgt konfiguriert werden.
Dieser Eintrag ist vom Autor unter
CC BY 4.0
lizensiert.