
bitwarden 是一款开源的密码管理器,支持 Web、Chrome、Firefox、Opera 以及 Edge 浏览器插件,拥有 iOS、Android 客户端,采用本地加密,云同步的方式。
这篇文章就利用宝塔面板和docker搭建Bitwarden。
一:简介
github项目地址:https://github.com/dani-garcia/vaultwarden
二:要求
云服务器(演示系统:Debian 10)
一个解析好的域名
宝塔面板
三:部署
1. 安装宝塔面板
官方地址:https://www.bt.cn/bbs/thread-19376-1-1.html
2. Docker安装
官方地址:https://docs.docker.com/engine/install/debian/
systemctl enable docker #设置docker开机自动启动
systemctl status docker #查看docker状态
3. 正式部署
用Docker来部署,两行命令就够了,命令如下:
docker run -d --name bitwardenrs \
--restart unless-stopped \
-e WEBSOCKET_ENABLED=true \
-v /www/wwwroot/bitwardenrs/:/data/ \
-p 88:80 \
-p 3012:3012 \
vaultwarden/server:latest
注意:/www/wwwroot/bitwarden/
请修为自己的路径
安装截图,如下:

四:设置反向代理
在设置之前,我们需要新建一个站点,并且设置好SSL证书。

我们需要把http://127.0.0.1:88设置反向代理,如图

代码如下:
location / {
proxy_pass http://127.0.0.1:88/;
rewrite ^/(.*)$ /$1 break;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade-Insecure-Requests 1;
proxy_set_header X-Forwarded-Proto https;
}
五:登录Bitwarden
设置好反向代理之后,我们就可以打开站点,如图:

注意:创建账号,需要在开启了ssl证书的情况下才会成功。
注册账号后,就可以用这个账号来登录Bitwarden了,如图:

六:配置
如果只是自己使用,那就需要关闭掉注册,使用下面的命令。使用之前可以在宝塔面板中删除掉之前的容器,然后运行以下命令来重新创建容器并开启禁止用户注册的功能。
docker stop bitwardenrs #停止容器
docker rm -f bitwardenrs #删除容器
docker run -d --name bitwardenrs \
--restart unless-stopped \
-e SIGNUPS_ALLOWED=false \
-e WEBSOCKET_ENABLED=true \
-v /www/wwwroot/bitwardenrs/:/data/ \
-p 88:80 \
-p 3012:3012 \
vaultwarden/server:latest
运行完,然后再去试下创建账号就会出现一个不能创建账号的错误提示:

七:设置自动同步
bitwarden 默认是不会自动同步的,不管你是添加或者删除又或是修改了一条记录,都只是先保存在本地,只有当你手动点一下同步时才会进行同步。此时我们可以打开 WebSockets notifications 功能,这样手机修改后会立刻自动同步到云端。所以,我们还需要需要上面的反向代理。
打开网站配置文件,直接复制过去就可以了。(可以把前面第四步的反向代理那段替换掉)
location / {
proxy_pass http://127.0.0.1:88;
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;
}
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:88;
}

八:下载客户端
登录Bitwarden,在右上角点击头像,然后点击【获取应用】,如图:

点击小齿轮,输入我们搭建的网站地址:

保存登陆即可。
最重要的是Bitwarden完全开源,完全免费。