Bitwarden密码管理器
Bitwarden是一款开源跨平台的密码管理器,你可以选择自己部署密码库,而不需要经过第三方的服务器。总之为了摆脱恼人的Edge,首先要部署代替的密码管理器和迁移密码。
部署前的准备
- 一台装有docker及docker-compose,nginx的服务器
- 一个可以使用的域名
在这里贴上官方提供的配置要求:
| Minimum | Recommended |
---|
Processor | x64, 1.4GHz | x64, 2GHz dual core |
Memory | 2GB RAM | 2GB RAM |
Storage | 12GB | 25GB |
Docker Version | Engine 26+ and Compose | Engine 26+ and Compose |
创建一个专门用于Bitwarden的用户
根据Bitwarden官方的建议,创建一个专门用于Bitwarden的用户,以便隔绝Bitwarden与其他应用程序
1
2
3
4
5
6
7
| sudo adduser bitwarden # 使用Ubantu的话,这一步就需要输入密码
sudo passwd bitwarden # 建议使用强密码并妥善保管
sudo groupadd docker # 如果安装了docker一般情况下docker用户组已经存在
sudo usermod -aG docker bitwarden
sudo mkdir /opt/bitwarden
sudo chmod -R 700 /opt/bitwarden
sudo chown -R bitwarden:bitwarden /opt/bitwarden
|
部署Bitwarden
切换到bitwarden用户
下载官方提供的安装脚本
1
| curl -Lso bitwarden.sh "https://func.bitwarden.com/api/dl/?app=self-host&platform=linux" && chmod 700 bitwarden.sh
|
在安装前需要先到Bitwarden官网获取安装id和密钥,需要用到一个邮箱地址,随后运行脚本执行安装命令,根据提示填写即可
安装完成后需要修改配置文件和环境变量文件,首先修改config.yml
1
| vim ./bwdata/config.yml
|
主要修改以下两个设置:
1
2
3
4
5
6
7
| # Docker compose file port mapping for HTTP. Leave empty to remove the port mapping.
# Learn more: https://docs.docker.com/compose/compose-file/#ports
http_port: 30080 # 修改成80意外的端口防止冲突
#
# Docker compose file port mapping for HTTPS. Leave empty to remove the port mapping.
# Learn more: https://docs.docker.com/compose/compose-file/#ports
https_port: # 禁用https
|
随后修改global.override.env
1
| vim ./bwdata/env/global.override.env
|
1
2
3
4
5
6
7
8
| globalSettings__mail__replyToEmail=no-reply@bitwarden.ratmomo.tech # 修改成你的邮箱以获得smtp服务
globalSettings__mail__smtp__host=REPLACE
globalSettings__mail__smtp__port=587
globalSettings__mail__smtp__ssl=false
globalSettings__mail__smtp__username=REPLACE
globalSettings__mail__smtp__password=REPLACE
globalSettings__disableUserRegistration=false # 个人使用的话,在创建完账户后建议设置成true
adminSettings__admins= # 修改成你的邮箱
|
outlook的用户可以在此找到相关配置
修改完成后运行以下命令:
1
2
| ./bitwarden.sh rebuild
./bitwarden.sh start
|
完成后可以使用docker ps
验证是否正常运行
设置反代
个人使用强烈建议选择Nginx proxy manager代替Nginx,以下以npm为例演示:
登录npm的WEB管理页面,选择Add Proxy Host
在Domain Names输入你的域名,例如:bitwarden.example.com
。在Forward Hostname/IP输入服务器的IP地址,例如:192.168.1.2
。端口填入刚刚设置的端口,建议打开下方的三个选项
点击SSL,选择Request a new SSL Certificate,建议打开Force SSl和HTTP/2 Support两个选项,再在下方填入你的邮箱,勾选同意协议以获取SSL证书
到这一步基本上已经可以通过刚刚设置的域名访问自己的BitWarden页面了,随后注册账户即可使用密码库
番外篇:导入Edge/Chrome密码
在Edge/Chrome的密码管理界面选择导出
在Bitwarden的管理页面中选择工具菜单下的导入数据,再在文件格式菜单中选择Chrome(CSV)
,上传刚刚导出的csv文件,点击导入数据按钮即可
参考
Linux Standard Deployment | Bitwarden Help Center
bitwarden部署和使用记录 – 萌萌哒赫萝的小站
如何搭建一个私人的bitwarden密码管理工具服务端(保姆级教程) | Sola’s Blog
Import Data from Google Chrome | Bitwarden Help Center