我们在服务器搭建1panel面板之后,那么我们就能够折腾 bitwarden 了。而配置 ADMIN_TOKEN 与配置邮件时,有些容易踩坑的关键点,值得我们注意。
当然,下面的其实是 vaultwarden (由 bitwarden_rs 改名而来)。
安装bitwarden(vaultwarden)
在 1Panel 面板中,应用商店中搜索 bitwarden,即可安装。下面有些简单的操作我会跳过。
勾选端口外部访问
勾选编辑compose文件
在 compose 文件中编辑:在 services 下的 bitwarden 下,添加以下内容,即:
|
|
请严格按照以上格式进行设置,不要多一个空格,也不要少一个空格。
部署完成后,创建一个反代网站用于访问 bitwarden 服务,并且设置好域名的SSL证书。
将ADMIN_TOKEN改为argon2加密
完了我们访问 https://域名/admin ,用上面设置的 ADMIN_TOKEN 进行登录。
然后我们会发现如下提示:
admin页面不安全提示
上面是由于我们之前设置的 ADMIN_TOKEN 是明文的(我们假设这个密码是旧密码),所以会有这样的提示,建议我们修改为 argon2 加密。
回到 1Panel 面板,在我们刚刚部署的容器列表这里,按照下图进入 bitwarden 容器内的终端。
进入bitwarden容器内的终端
在终端做,执行命令:
|
|
然后输入两次你想要设置的密码(输入密码时不会显示),我们称现在设置的密码为新密码,就会有以下界面:
输入vaultwarden hash命令
如上图,你会得到类似ADMIN_TOKEN='$argon2id$xxxxxxxxxxx'的字符串。
但是这个字符串有坑,不能直接复制到 compose 文件中。因为 compose 文件中$是特殊字符,需要转义为$$。
因此,我们需要将字符串 ADMIN_TOKEN='$argon2id$xxxxxxxxxxx'中的$替换为$$,且去掉前后的单引号,即:ADMIN_TOKEN=$$argon2id$$xxxxxxxxxxx,也就是说原来有一个$,现在有两个$$。
然后回到 1panel 面板,在我们刚刚部署的容器列表这里,点击“参数”,重新修改 compose 文件,并替换掉原来的 ADMIN_TOKEN 。
点击确认保存之后,需要手动重建容器(当然你也可以先试试“重启”容器,无效再重建容器)。
设置完密码之后需要重建容器
然后重新访问 https://域名/admin ,用上面设置的新密码进行登录。
配置邮箱(cloudflare email + resend)
由于我的域名是托管在 cloudflare 上,所以可以利用 cloudflare 上的免费的 email 路由服务。但是 cloudflare 上的免费的 email 路由服务,只能接收邮件,不能发送邮件。于是我们选择利用 resend 来发送邮件,resend 每月可免费发送 3000 封电子邮件(政策可能有变化,下同)。
除了resend,还有其他邮箱服务,比如:
注册好 resend 后,我们需要在 resend 中配置域名、设置API Key,比较简单。
resend设置页面
然后对照下图,在bitwarden的admin界面中配置好 smtp 服务。
resend的smtp页面
bitwarden-admin页面的邮件设置
如上图所示,它们的配置的对应关系如下:
| Bitwarden 配置项 | Resend SMTP 对应项 |
|---|---|
| Host | Host |
| Port | Port |
| Username | User |
| Password | Password |
其他设置:
- Secure SMTP 请填写
force_tls - From Address 就是设置bitwarden系统邮件的发送者地址
- From Name 就是设置bitwarden系统邮件的发送者名称
- SMTP Auth mechanism 请填写
PLAIN - Server name sent during HELO 请填写 你的bitwarden域名,比如
your-domain.com
bitwarden-admin页面汉化
如果你想要汉化 bitwarden-admin 页面,你可以参考以下链接:
简体中文 by @wcjxixi :vaultwarden-lang-zhcn
简体中文 by @JinkaiNiu :vaultwarden-zh-cn
还有一个汉化至今两年没更新了,我觉得没必要贴出来了。但我觉得好像都没有100%汉化
如果我闲的没事的话,说不定我也去用AI汉化一下,哈哈哈
并将相应的内容复制到如下图所示的位置:
bitwarden-admin页面汉化的文件存放位置
加载评论中...
哎呀!Giscus评论模块加载失败啦~
Giscus是基于Github Discussions的,或许当前网络无法访问Github哦!