Docker安装Bitwarden与配置

在服务器上用docker运行Bitwarden

背景

之前薅腾讯的羊毛200块买了三年的服务器。闲着不用也是浪费,就使用Docker简单搭建了一个密码服务器Bitwarden和图床Chevereto。后面的文章我会记录一下如何搭建Chevereto。

创建用于注册的容器

首先确保服务器上安装了 docker。

然后执行下面的命令创建容器

1
docker run  --rm -d --name bitwarden  -p 8080:80  -p 3012:3012 -e SIGNUPS_ALLOWED=true -e WEB_VAULT_ENABLED=true  -e DOMAIN=https://yourdomain.com -v /data/bitwarden:/data bitwardenrs/server:latest

这里加上了–rm 会在stop后自动删除,同时我们挂载了存储卷(Volume)不用担心数据丢失问题。

先把允许注册(SIGNUPS_ALLOWED)设置为true等我们登录配置好后在改为false

NGINX配置

密码服务器还是使用ssl比较安全,如果你不知道如何安装Nginx可以参考我的这篇文章。

设置反向代理和ssl证书

首先要申请一个ssl证书 我是直接在腾讯云申请的免费的证书。

然后进入Nginx的配置根目录

1
cd /etc/nginx

创建一个文件夹专门用来存放ssl证书

1
mkdir ssl

切换到自己电脑上,使用scp把证书复制过去

1
2
scp yourdomain.crt user@ip:/etc/nginx/ssl/password.crt
scp yourdomain.key user@ip:/etc/nginx/ssl/password.key

进入nginx的配置目录

1
cd /etc/nginx/sites-available/

创建文件password写入以下内容

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
server {
listen 443 ssl;
server_name yourdomain.com;
ssl_certificate /etc/nginx/ssl/password.crt; #配置证书文件
ssl_certificate_key /etc/nginx/ssl/password.key; #配置证书私钥文件
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;

#配置反向代理,请求代理发送到8080端口
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
root /usr/share/nginx/html;
index index.html index.htm;
}

location /notifications/hub {
proxy_pass http://127.0.0.1:3012;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}

location /notifications/hub/negotiate {
proxy_pass http://127.0.0.1:8080;
}
}

重启nginx

1
nginx -s reload

注册账号并关闭注册功能

浏览器打开首页,点击注册账号,如果没有意外。应该是下图所示的界面。

image-20211203151919224

务必牢记主密码,忘记了是没办法找回的。

现在关闭容器,重新创建一个不允许注册的。

1
docker container stop bitwarden
1
docker run -d --name bitwarden  -p 8080:80  -p 3012:3012 -e SIGNUPS_ALLOWED=false -e WEB_VAULT_ENABLED=true  -e DOMAIN=https://yourdomain.com -v /data/bitwarden:/data bitwardenrs/server:latest

其他设置

两步验证

登陆后按图示顺序点击

image-20211203152843653

注意: 这里不建议使用Google Authenticator 这个软件很久不更新 很不好用

可以使用Authy或者Microsoft Authenticator

image-20211203153236574

导入Chrome密码

首先导出Chrome密码, 打开设置点击导出

image-20211203153718197

然后在Bitwarden中选择导入 这里除了可以导入Chrome还可以导入很多别的软件的密码 可以自己探索一下

image-20211203153925894

客户端使用

Chrome插件

首先去谷歌插件市场下载插件,然后点击右上角的插件

image-20211203154249849

点击设置

image-20211203154347498

添加服务器地址,我们这里只填第一个就可以

image-20211203154439108

点击保存然后用刚才在网页注册的账号登录

IOS客户端

安装

下载bitwarden客户端。配置和Chrome插件差不多。登录号后可以设置自动填充为bitwarden.

设置自动填充

打开设置点击密码

IMG_9511978C27E8-1

点击自动填充密码

IMG_7FF16FF4721C-1

选中bitwarden

IMG_A9630C03840F-1

打赏

请我喝杯咖啡吧~

支付宝
微信