宝塔面板docker搭建Bitwarden – 优秀的第三方密码管理器

Bitwarden 是一款开源密码管理器,它会将所有密码加密存储在服务器上,它的工作方式与 LastPass、1Password 或 Dashlane 相同。

官方的版本搭建对服务器要求很高,搭建不容易,github上有人用 Rust 实现了 Bitwarden 服务器,项目叫 bitwarden_rs,并且提供了 Docker 镜像,这个实现更进一步降低了对机器配置的要求,并且 Docker 镜像体积很小,部署非常方便。这个项目目前在github也有2k的star,所以说用的人还是有不少的。

此外,官方服务器中需要付费订阅的一些功能,在这个实现中是免费的。这篇文章就利用宝塔面板来docker搭建Bitwarden。

一:简介

项目:https://github.com/dani-garcia/bitwarden_rs

二:要求

宝塔面板最新版7.0.3、docker管理器、一个解析好的域名。

三:部署

我们用docker来部署,两行命令足够了,命令如下:(ssh 登录服务器,输入和原来容器一样的启动参数创建并运行容器)

此处为隐藏的内容 发表评论并刷新,方可查看
发表评论

安装截图,如下:

四:设置【饭袋】

上面的设置好之后,我们还需要设置【饭袋】才可以打开网站,但是在设置之前,我们需要新建一个站点,并且设置好SSL证书。这些还是用宝塔面板来操作。我们需要把【http://127.0.0.1:6666】设置【饭袋】,如图:

五:登录Bitwarden

设置好【饭袋】之后,我们就可以打开站点,如图:

注意:创建账号,需要在开启了ssl证书的情况下才会成功。

注册账号后,就可以用这个账号来登录Bitwarden了,如图:

六:配置

因为现在的状态是所有人都可以注册这个网站,这个东西只是自己使用,所以我们需要关闭掉注册,使用下面的命令。使用之前可以在宝塔面板中删除掉之前的容器,然后运行以下命令来重新创建容器并开启禁止用户注册的功能。

不必担心,因为指定了 volume 映射,删除容器后不会删除数据。SIGNUPS_ALLOWED=false 代表禁止注册!

6.1、禁用新用户的注册

docker run -d --name bitwardenrs \
  --restart unless-stopped \
  -e SIGNUPS_ALLOWED=false \
  -e WEBSOCKET_ENABLED=true \
  -v /www/wwwroot/xxx/:/data/ \
  -p 6666:80 \
  -p 3012:3012 \
  bitwardenrs/server:latest

运行完在容器列表里就又可以重新看到了,然后再去试下创建账号就会出现一个不能创建账号的错误提示。看图:

禁止用户注册截图一张,请欣赏:

六:设置自动同步

bitwarden 默认是不会自动同步的,不管你是添加或者删除又或是修改了一条记录,都只是先保存在本地,只有当你手动点一下同步时才会进行同步。此时我们可以打开 WebSockets notifications 功能,这样手机修改后会立刻自动同步到云端。所以,我们还需要需要上面的“防呆”

打开网站配置文件,找到“防呆”直接复制过去就可以了。

    location / {
        proxy_pass http://127.0.0.1:6666;
        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:6666;
    }

八:下载客户端

登录Bitwarden,在右上角点击头像,然后点击【获取应用】,如图:

我们看到,基本所有都支持了,国外主机优惠这用chrome插件来演示一下。如图:

也可以直接在chrome 网上应用店下载Bitwarden – 免费密码管理器,如图:

这里点击安装就可以了。

九:插件设置

插件安装好需要先设置下服务器url,如图:

设置好保存,我们现在用刚刚注册的用户名和密码就可以登录了,登录后,如图:

这样我们使用chrome也可以方便的管理自己的密码了,最重要的是Bitwarden完全开源,完全免费。

十:总结

目前比较流行的密码管理软件有 1Password、LastPass 、KeePass、Enpass以及SafeInCloud等,但是完全免费开源的只有bitwarden。我们只需要借助docker就可以很容易搭建一个自己的密码管理平台。

bitwarden优点:全平台,免费、开源,在安卓上体验很好,有多种双重验证,自动填充功能正常,有密码泄露检测,适应大部分 APP,可以自定义字段,可以正则匹配网址,可以自定义图标,会根据网址或 APP 自动获取 ico,可以指纹解锁,中文翻译很好。

不足之处:设计感不足,UI 好丑,文件夹没有排序功能,部分功能没有完善,过于依赖服务器和网络。

官方的bitwardenrs/server 是 C# 实现的,Bitwarden-rs 是好事者用 Rust 重写了一遍。原版的虽然跑在 Docker 里,但是对资源的要求那是相当的高,并且依赖 MSSQL。rs 版大大降低了对机器配置的要求,此外,据说 RS 版还将原来官方的一些收费功能实现并免费了。没有亲自考证过,所以综上所述,这个密码管理器可玩性还是非常高的。