使用 Bitwrden 搭建自托管密码存储服务

type
Post
status
Published
date
Dec 23, 2022
slug
bitwarden
summary
使用 docker 在私人服务器上搭建 Bitwarden 密码存储服务
tags
docker
Bitwarden
密码管理
自托管
icon

1. 介绍

一直使用 LastPass 管理密码, 其免费版本已经相当好用了, 但免费版本只能有一个设备保持在线这一限制对我这个多设备用户就很不友好, 于是决定搭建属于自己的密码存储系统
前置要求:
  • 一台(云)服务器
  • 一个域名(如果你的服务器是国内厂商的, 需要备案, 个人备案大概就花费了 3 天, 整个过程还是很快速的)
技术:
  • 使用 Docker 进行部署 Bitwarden (使用 vaultwarden , 官方镜像使用.Net 和 MSSQL, 更消耗资源, 该项目使用 rust 语言重写更适合自托管运行)

2. 搭建

2.1 Docker 及 Docker-compose 安装(略)

2.2 安装及配置 Nginx Proxy Manager

2.3.1 创建目录

内容如下:
第 19 - 24 才是精华, 我在这试错了一天
创建名为 npm 的网络

2.3.2 开放 80、81和443端口

2.3.3 启动服务

2.3.4 登录后台

浏览器地址栏输入 <IP 地址>:81 即可进入 Nginx Proxy Manager 的web管理界面。
默认账户密码为:

2.3.5 登录后要求更改用户名, 邮箱及密码

2.3 安装 Bitwarden

内容如下
记得修改第 15 行 你的域名 , 如果想用 IP:端口 的方式直接访问, 取消第 8,9 行的注释, 并记得在防火墙放行 9001 端口
使用 NginxProxyManager 可以用 容器名 内置port 访问(省去了端口转发)

2.4 配置 Bitwarden 的反向代理

2.4.1 设置域名解析到指定 IP 主机

以阿里云域名为例
notion image
notion image
notion image

2.4.2 设置 Nginx Proxy Manager

notion image
notion image
notion image
ssl 证书申请
notion image
notion image
点击 Save 保存

3. 测试及使用

3.1 测试

在浏览器地址栏输入 bitwarden.你的域名 后回车
notion image

3.1.1 输入电子邮箱和主密码以创建一个新账号

notion image
notion image
然后登录

3.2 浏览器插件使用

3.2.1 安装浏览器插件

notion image

3.2.2 配置自托管环境

notion image
notion image
记得修改成你的域名

3.2.3 登录

使用上一步的邮箱和账户登录

3.2.4 配置

可以把密码库超时时间设为从不, 避免每次都要重新登录
notion image
网页加载时自动填充(无需手动复制)
notion image
notion image

3.3 导入 LastPass 数据

登录 LastPass 网站, 点击左侧「Advanced Options」-「Export」即可导出一个 .csv 文件
notion image
notion image

3.4 安卓 自动填充

3.5 iOS 自动填充

4. 备份数据

一份存在github私有仓库中,一份存到另一台服务器上。
 
 
 

参考

© insv 2021 - 2023