前言
密码管理这件事我从来没有在意过,很久之前就白嫖到朋友的1Password家庭账户但是使用频率极低,前段时间在社工库查了一下自己,发现很多密码泄露,而且都是同一个密码的时候我慌了,这个问题足够严重但现在补救也不算晚。
个人使用要求:
- 开源免费
- 跨平台
- 安全
- 方便管理
最终找到了 Bitwarden
我没有使用Bitwarden官方镜像,因 Bitwarden 服务器使用.Net开发,Docker 镜像体积过大,此外它使用MSSQL数据库,这个数据库对服务器性能要求比较高。
所以有人利用Rust重写了一遍,根据官方项目同步更新,这个项目的Docker镜像叫做vaultwarden,这个镜像体积比较小,对服务器性能要求比较低,所以采用该镜像。
部署
宝塔安装docker
宝塔面板选择软件商店
- docker管理器
- 安装
获取镜像
打开 docker管理器
- 镜像管理
- 官方库
- vaultwarden/server
- 获取镜像
创建容器
- 创建容器
- 镜像选择
vaultwarden/serve:latest
- 端口映射:
容器端口
:80
,服务端口
:20001
(随意设置)点击加号添加 - 目录映射:
/www/wwwroot/bitwarden
,容器目录
:/data
点击加号添加 - 内存:默认
- 提交
绑定站点
这里注意根目录填写和docker一样的目录,PHP版本选择纯静态
一般来说,我们都不希望和服务器通信的密码被截获,所以墙裂建议启用https来加密我们和服务器之间的通信。
开启反向代理,目标 URL:http://127.0.0.1:20001
修改为自己设置的服务端口
完成
访问域名即可打开此页面,随后注册即可
使用
这是指简单介绍一下 Google Chrome 通过浏览器插件的是使用吧,其他平台也有对应的应用,方法类似,进入官方下载页面
- 下载插件
- 点击插件插件 - 设置 - 填写所绑定的域名 - 登陆即可
Android、iOS、PC、MacOS 下载对应应用程序绑定你自己的域名登陆即可
关闭注册
既然是自己使用的,那注册功能就可以关闭掉了
方法:关闭并删除此容器 - 然后运行 ssh 连接服务器执行如下命令 (SIGNUPS_ALLOWED=false 表示禁止注册)
注意修改:/www/wwwroot/bitwarden
和20001
为自己设置的目录和端口
docker run -dit \
-e SIGNUPS_ALLOWED=false \
-v /www/wwwroot/bitwarden/:/data/ \
-p 20001:80 \
--name bitwarden \
--hostname bitwarden \
--restart always \
bitwardenrs/server:latest
备份及恢复
宝塔面板选择计划任务
- 备份网站
最好定期拷贝多份到可以信任的设备
恢复备份
恢复的话,将备份文件解压到原来的位置再次启动docker即可
docker run -dit \
-e SIGNUPS_ALLOWED=false \
-v /www/wwwroot/bitwarden/:/data/ \
-p 20001:80 \
--name bitwarden \
--hostname bitwarden \
--restart always \
bitwardenrs/server:latest
2021年07月21日 21:23
Bitwarden我也在用,可以再加个两步验证更安全点。