type
status
date
slug
summary
tags
category
icon
password
最近为了保障数据安全,把Edge和Chrome的密码转移到了Bitwarden中。虽然我相信Bitwarden不会跑路,但还是考虑起自己部署Bitwarden后端的计划。在不确定是否续购国内服务器(要备案才能方便地使用)的情况下,我发现了云函数这一方式也能快速安全地部署后端,反正阿里云也有三个月的免费试用,那就直接开始试试。
📚 准备
- 一个阿里云账号
- 一个域名(需要备案才能使用https)
- 一个域名对应的SSL证书(没有的话可以去阿里云免费申请一张)
- 一台能跑Docker的电脑或服务器
🏗️ 开始
在云函数上部署Bitwarden后端(Vaultwarden)是利用阿里云函数运行容器镜像,将数据存储到NAS,并通过https提供服务,可以做到无服务器、稳定且无需备案。
准备容器镜像
由于云函数需要使用Docker镜像,同时仅支持在阿里云容器镜像服务(ACR)中的镜像,因此需要将用到的镜像上传到ACR中。
- 开通ACR https://www.aliyun.com/product/acr 并 设置Registry密码
- 拉取Vaultwarden镜像到本地Docker仓库
- 到ACR中创建命名空间和镜像仓库,注意:镜像仓库与云函数地域要相同,如都位于杭州/深圳
- 根据ACR指引登录到Docker并将本地Vaultwarden镜像推送到ACR,可以参考 阿里镜像容器服务ACR的镜像推送和拉取_获取阿里云镜像仓库中镜像的tag_PerDrix?的博客-CSDN博客
- 到ACR仓库中检查镜像是否存在且正确
创建云函数服务和函数
- 前往 https://www.aliyun.com/product/fc 开通云函数FC服务
- 进入左侧服务与函数界面创建服务以及函数
- 首先在顶部选择合适的地区,随后点击创建服务,第一次创建需要同时创建云函数角色,保持默认即可。注意:创建服务时,点击高级选项,将允许访问VPC(内网资源)改为是
- 创建服务完成后,会自动进入服务界面,此时点击左上角的创建函数来创建函数,创建函数设置如下:
- 使用容器镜像构建
- Web Server模式勾选为“是”
- 请求处理程序类型选择“处理http请求”
- 镜像配置选择在上一部分中上传的镜像,如果没有可选,请确认镜像仓库与云函数是否在同一地域
- 监听端口为80
- 高级配置
- 不使用GPU
- 规格方案:0.1vCPU,128MB内存,单人使用完全足够,运行流畅,成本非常低,还可以防止他人访问造成大量损失。
- 其余保持默认即可
- 环境变量
- 配置管理员密码,可以对服务进行管理,变量名为
ADMIN_TOKEN
,值为管理员密码,推荐根据Vaultwarden Wiki配置密码哈希以保障安全,具体见 Enabling admin page · dani-garcia/vaultwarden Wiki (github.com) - 配置SQLite WAL禁用,变量名为
ENABLE_DB_WAL
,值为false
- 提前配置NAS挂载路径,变量名为
DATA_FOLDER
,值为/mnt/data
- 确认无误后,点击创建即可完成函数创建。
- 回到服务详情,点击配置/编辑,为服务配置VPC和NAS
- 转到网络配置,将允许访问VPC改为是,配置方式为
自动
,等待配置完成即可 - 转到存储配置,将挂载NAS文件系统改为启用,配置方式为
自动
,函数本地目录为上面环境变量DATA_FOLDER
的值,等待配置完成即可 - 点击页面最下方保存
- 此时,云函数已经配置完成,理论上已经可以访问,接下来配置自己的域名和证书
- 回到云函数控制台,在左侧高级功能中选择
域名管理
并进入,根据提示绑定域名并配置证书即可
- 访问
你的域名/admin
前往Vaultwarden管理后台,设置你的服务后端,建议关闭图标缓存,直接使用Bitwarden官方服务器,可以节省成本。其余设置自己根据需要取舍即可,建议在自己注册完账户之后关闭新用户注册
- 访问
你的域名
即可进入网页版密码库,注册你的账号,导入你的数据,配置各种信息即可。
- 此时你已经是高级用户,可以使用密码附件、密码检查、密码泄露报告等高级功能,部署大功告成!
使用
上述步骤全部完成后,可以在各平台的Bitwarden客户端上以自托管身份登录,使用你自己部署的后端,将数据控制在自己手中,不过在添加自部署的时候记得点击高级,把图标服务器填成 https://icons.bitwarden.net 来享受官方的图标服务器!🤣
📎 参考文章
文章内容有较强的时效性,请根据实际情况进行相应调整,如有相关问题也可联系作者,或许能给你提供一点帮助!
- 作者:GeorgeDong32
- 链接:https://www.georgedong.tech/article/Vaultwarden-on-AFC
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。