BitWarden自托管的二三事

容小狸 Lv2

缘由

最近想把Windows上Edge浏览器的密码和iPhone上的密码结合起来,就想着能有一个可以同步的密码管理器。
但是我又不希望密码上云,那就只能选一个可以自托管的密码管理器了,于是就找到了Bitwarden。
Home Assistant OS有一个插件系统,也就是加载项。其中的插件会以docker的形式安装在系统内。其中就有一个Vaultwarden。这就是我们需要的插件。

Vaultwarden 部署

其实非常简单,在Home Assistant加载项商店的Home Assistant Community Add-ons类别中找到。直接安装即可。不急着启动,因为我们还需要一个证书。

证书

证书有两个方式,一个是阿里云,一个是自签证书
阿里云的个人证书换了个地方,现在在安全-数据安全-数字证书管理服务-个人测试证书(原免费证书)。直接创建证书,把域名写上就可以。
自签证书就暂时略过了,这部分有现成的教学。

后来我换了个方式,使用Let’s Encrypt的证书和阿里云的域名联动的方式。Home Assistant 官方的插件是不支持阿里云DNS的,这里使用@kylin7226的插件。仓库在这儿

配置

Let’s Encrypt插件的配置先写好Private Key FileCertificate File的名字,这里我都写为fullchain.pemprivkey.pem,把DOMAIN设置为你的域名,EMAIL设置为你的邮箱。
然后在Advanced Settings中,把ENABLE_DNS_CHALLENGE设置为true

Vaultwarden的配置中,把SSL_CERT_PATH设置为/ssl/fullchain.pemSSL_KEY_PATH设置为/ssl/privkey.pem

阿里云这里需要一个RAM的AccessKey,地址在这里。之后填进kylin7226的Let’s Encrypt插件的配置中,Challenge选择DNS,DNS Provider configuration填写aliyun_access_keyaliyun_acces_key_secret,在非常底下有一个provider,不要忘了填,选择dns-aliyun

搞定之后跑一遍Let’s Encrypt插件,就可以在/ssl目录下得到证书了。

一定记得在刷新证书后重启VaultWarden,不然会证书出问题。(这件事情折磨了我两天,不知道为什么出问题,总之重启一遍好了,大抵是没重启没刷新证书?)

公网访问

我使用的是Open Frp的服务,免费建隧道,虽然不算很好的隧道,但是能用即可。
在Open Frp的控制台中,新建一个https隧道,把本地的7277端口映射公网,映射域名自己起一个。

Open Frp是支持frpc接入的,(应该是frp服务都支持吧?)那我们就可以在Home Assistant中下载一个frp加载项,配置frp启动了。我使用的是luckywaa的frpc加载项

这个frpc加载项是需要编辑share文件夹中的frpc.toml的,所以需要你先准备SMB共享文件夹。然后在frpc.toml中配置好Open Frp的隧道信息。
每个人的config都是不完全一致的,看到你创建的隧道,选择操作-获取配置文件/启动命令,选那个配置文件,全部复制就可以。有可能会报错不认识autoTLS选项之类的,把autoTLS那行删掉就行了。

在完成后,记得将隧道操作-详情中的CNAME地址复制,填到你在阿里云DNS解析那里,类型选择CNAME,粘贴。

之后应该就都搞定了。

这篇文章有点乱,因为我从8月份写到现在,时不时就在尝试怎么部署更好一点,一直试到现在(11月),导致我的尝试和思路算是比较割裂的。今天算是把这篇文章东拼西凑完成了,就这样。

  • Title: BitWarden自托管的二三事
  • Author: 容小狸
  • Created at : 2025-08-19 04:46:12
  • Updated at : 2025-11-26 14:49:12
  • Link: https://blog.rongxiaoli.top/2025/08/18/BitWarden自托管的二三事/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments
On this page
BitWarden自托管的二三事