前言
为了获得更好的阅读体验,推荐前往 使用 Docker 部署 Bitwarden 进行阅读
介于我有一个低配置的国内服务器,但是无奈没有域名备案,所以只能用服务器来建一些吃配置小的公共游戏服务器提供给朋友们玩,但是现在有朋友借给我一台新机子去建游戏服务器,但是我旧机子还有将近一年的时间,于是决定来玩点好玩的。
技术应用
使用非 80/443 端口进行绕备案
使用 Nginx 反向代理技术,进行代理容器内容
使用 宝塔 面板进行轻松部署、调整
软件应用
宝塔面板、Bitwarden、Docker、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证书。