技术应用
使用非 80/443 端口进行绕备案
使用 Nginx 反向代理技术,进行代理容器内容
使用 宝塔 面板进行轻松部署、调整
软件应用
Bitwarden 介绍
Bitwarden 是一款自由且开源的密码管理服务,用户可在加密的保管库中存储敏感信息(例如网站登录凭据)。平台提供有多种客户端应用程序,包括网页用户界面、桌面应用,浏览器扩展、移动应用以及命令行界面。并且提供云端托管服务,并支持自行部署解决方案。
Bitwarden 本身是有免费版本的,不过并没有优化线路,而且只有付费版本才支持 2FA。自主部署可以把数据牢牢掌握在自己手中,还不用花钱(个人付费版最低 10 刀一年),这可真是一件美差啊!
开始部署
基于宝塔面板进行部署,因此我们需要安装宝塔面板,在此就不再提供安装宝塔面板的教程了。
前往宝塔面板安装管理软件 Docker 和 Nginx,版本选择默认的版本即可,下达安装指令后,静待安装完成。
安装完成后,我们先不管 Nginx 因为它是为网站反向代理服务的,我们现在要进行部署系统。
点击 Docker 对应的设置,在弹出的窗口中点击左侧镜像管理,在上方选择获取镜像,在弹窗的第二个窗口内,选择官方库,输入 bitwardenrs/server:latest
,并获取镜像
拉取过程中无报错,最终显示如上图即代表成功拉取。
接下来让我们创建容器。
点击左上角创建容器,将会弹出来下窗口。
将容器的 80 端口映射到你想要的端口,将容器的 /data 目录映射到你想要的目录,记着点击加号才算是创建成功了,并且进行近一步配置。
我的个人配置如图。完整配置后点击提交即可进行部署。
在环境变量中是我设置的主密码,可以不填环境变量的内容。具体的其它环境变量如下:
# 禁用新用户注册
SIGNUPS_ALLOWED=false
# 禁用邀请
INVITATIONS_ALLOWED=false
# 启用日志记录
LOG_FILE=/data/bitwarden.log
# 启用管理页面
ADMIN_TOKEN=some_random_token_as_per_above_explanation
# 这里的 some_random_token_as_per_above_explanation 为你自定义的一串任意字符
接下来让我们访问网站 ip: 设定的端口 ,例如我的访问地址就是 127.0.0.1:354
其中 127.0.0.1
就是服务器的 IP。
到此,部署部分就结束了,但部署完成后无法正常注册,因为它需要 HTTPS 的支持才能正常注册,因此这里需要进行下一个篇章 —— 反向代理
反向代理
准备一个域名,并且释放所需端口,由于我使用国内服务器,但域名未备案,因此需要使用别的端口来作为访问域名及端口,正常情况下使用 80 端口即可。
前往 DNS 解析商,进行域名解析
解析完成后来到宝塔面板进行域名绑定
绑定完成后,先开启 SSL 再开启反向代理
记着开启强制 SSL
开启反向代理
反向代理中 目标URL
是你在容器中建立那个可以访问的网站。
现在让我们再访问反向代理后的网站,就可以正常注册了!
在网址后输入 /admin(https:// 域名 /admin)就可以进入管理员界面。
其中 Key 就是在环境变量中设置的。
尾声
到此,Bitwarden 就是彻底部署完成了,有关其使用方法在网上有很多,支持浏览器插件、iOSApp、AndroidApp 等等。
补充
最新情况:非80/443端也有可能被墙,但我们可以选择直接绑定IP,为IP申请SSL证书。