在群晖NAS中通过docker安装密码管理器bitwarden

/ 默认分类 / 没有评论 / 180浏览

密码越来越多,网上,网下的,重要的,不重要的,如果每一个密码都设定不一样的,哪怕是大罗金仙也记不清楚了,所以,密码管理器就出现了,一个超级复杂的密码保护其他的所有密码——免费的密码管理器bitwarden就是这个领域的佼佼者,它的功能有账号密码管理、自动生成密码、导出密码、自动填充密码等等,简单而又实用。bitwarden搭配上一个永不关机的NAS则更是绝配,实现了数据本地化,使用实时化,而且功耗非常低。这里就介绍在群晖NAS上怎么通过docker实现本地部署bitwarden,这里有一个前置条件,那就是NAS要安装SSL证书,可以通过HTTPS进行加密访问。

Bitwarden 还可以私有化部署,这样可以确保数据完全掌握在自己手中,不必担心官方跑路。不过 Bit­war­den 官方服务对服务器需要的资源有点多,内存必须大于2G,小内存机器是根本跑不起来的,一般推荐使用第三方开发的 Vaultwarden。

Vaultwarden 是 Bitwarden 的轻量级版本,原名 bitwarden_rs,后来为了与“大哥” Bitwarden 区分开来,遂改名为 Vaultwarden。

Vaultwarden 使用 Rust 编写,默认使用 SQLite 数据库(同时还支持 MySQL 和 PostgreSQL),实现了 Bit­war­den API 的所有功能,只需要 10M 内存便可运行,几乎可以跑在任何硬件之上。https://github.com/dani-garcia/vaultwarden 不用想了,无脑使用 Vaultwarden 吧。

准备工作

创建文件夹

在DSM中使用file station创建两个文件夹:

/docker/vaultwarden/1.32.0 
/docker/vaultwarden/1.32.0/ssl

image-20240910143606657

证书导入

在DSM中进入控制面板,找到“安全性”,

image-20240910143936907

然后在电脑上把下载的压缩文件“archive.zip”进行解压,获得两个证书文件:cert.pem和privkey.pem.

把这两个文件上传到/docker/vaultwarden/1.32.0/ssl文件夹中。

image-20240910144144955

开始安装

打开docker,进入注册表,搜索vaultward,找到vaultward/server双击选择latest版本进行下载。

image-20240910144316892

进入映像,双击下载的镜像vaultwarden/server:latest,开始安装容器。

开机启动

在安装设置中进入“高级设置” ,勾选“自动重新启动”。

image-20240910144929689

端口设置

分别是 80端口 (API接口)和3012端口( WebSocket 通知)

image-20240910150640643

储存设置

image-20240910150701016

环境设置

image-20240910151403882

增加 ROCKET_TLS (证书设置) 和后端管理密码 ADMIN_TOKEN

新增一个变量ROCKET_TLS,值是:

{certs="/ssl/cert.pem",key="/ssl/privkey.pem"}

新增一个变量ADMIN_TOKEN,值是:

你自己的后台密码

后台管理

在你的域名后面加上 /admin,登录 Vaultwarden 管理后台,登陆密码为刚刚设置的 ADMIN_TOKEN

在这里可以根据情况对 Vaultwarden 进行一些可选设置,所有的设置项都可以通过鼠标悬停查看相应的说明.

一般设置(General Settings)

1.Domain URL:设置你的网站域名,记得带上 https,如 https://your.domain

2.Allow new signups :是否允许用户注册,如果密码库仅仅用于自用,建议在自己注册后关闭此选项。

3.Admin page token:在这里更改 Vaultwarden 管理后台的密码。

4.Invitation organization name:设置你的网站名字,将出现在自动发送的电子邮件中。

邮箱设置(SMTP Email Settings)

image-20240910142741883

1.设置 SMTP 服务,用来发送系统邮件(建议开启)。

2.你的 SMTP 服务提供方填写相关信息即可。

3.设置保存后,运行一次 Test SMTP 确保邮件可以正常发送。

其他配置

Vaultwarden 可以通过环境变量来自定义各种配置,它的所有环境变量都在这个文件中:

https://github.com/dani-garcia/vaultwarden/blob/main/.env.template