老蒋在前面的文章中也有提到,Bitwarden 确实是一款免费且功能完美的云端密码管理软件平台。如果我们比较重要且纠结的用户会担心密码存储在Bitwarden平台是不是有安全问题,当然到目前为止还没有人提到密码有问题的。如果我们确实担心的话,也可以利用Bitwarden支持的使用我们自建密码库管理密码。

昨天,我们也有在文章中介绍到当前腾讯云服务器比较便宜,这里我们选择到2G1M三年288元的云服务器(参考这里)。这里我们就在腾讯云服务器中配置私有密码云存储空间。
第一步、安装宝塔面板环境
理论上我们是可以搭建LAMP或者LNMP即可,只要是WEB管理环境都是可以安装Bitwarden容器的,但是我们这里借助宝塔面板自带的容器快速部署,所以我们安装宝塔面板。
1、宝塔安装脚本
这里我们是安装的CentOS 7.4+版本的镜像,然后通过下面的脚本一键安装面板。
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
这里直接丢到我们腾讯云服务器SSH远程执行。当然对于腾讯云服务器部署镜像、安全组等问题,这里我们就不详细解答,我们可以参考其他相关的云服务器处理文章。(腾讯云安全组设置)
2、部署WEB环境
这里我们在安装完毕宝塔面板之后,登录面板安装常规的LNMP环境。这里我们还需要准备一个域名解析到腾讯云服务器,如果我们是国内机房,那需要一个备案接入腾讯云的域名,当然二级域名也是可以的。我们可以用一个自己在腾讯云做网站的二级域名。(宝塔面板安装可以参考这里)
第二、安装Docker获取镜像
我们需要先安装Docker,然后才可以去调用安装”bitwardenrs/server”镜像,这样比较容易一些。如果用脚本安装的话,会比较麻烦,本身宝塔面板中是自带的,但是我们需要先安装Docker。

我们在软件商店搜索”Docker”,然后直接安装即可。

我们在Docker容器安装完毕之后,再添加镜像获取。输入”bitwardenrs/server”获取镜像,这个才是bitwarden_rs镜像,我们需要获取。获取过程可能时间稍微长一点,毕竟我们的服务器在国内,而bitwardenrs的服务器在国外,我们等待即可。

完毕之后我们需要创建容器。
在Docker管理器中,我们在【容器列表】创建容器。看到上图,有几点需要注意,如下:
容器端口:80;
服务端口:自定义,我这里设置5555,其实后面我们在宝塔面板的安全组需要开放5555。
服务器目录:/www/wwwroot/bitwarden.laobuluo.com,这个目录是根据我们自己创建站点的,和我们创建的站点一致。容器目录:/data。上面端口和下面目录创建后,需要点击后面的+号才可以,单单填写是不行的。其他配额根据我们实际填写,这里我默认。

完毕之后,我们需要修改容器名称,这里老蒋习惯设置成Bitwarden,如果以后容器多的话我们可以辨别哪个是哪个。
第三、创建站点设置SSL证书
其实站点应该先创建的,但是也不要紧我们这里再创建,注意上面的服务器目录要等会站点目录一致。这里我们要注意一下,在防火墙设置添加上面的自定义的服务端口。

设置添加端口之后,我们创建站点。

添加站点的时候,我们甚至都不要给PHP版本,直接静态即可。然后我们需要可以在宝塔面板给站点添加自动的免费SSL证书,也可以自己绑定已有的证书。

我们使用免费证书即可,只要能用无所谓。

这里最后我们需要添加反向代理模式,根据上图我们名称随意,然后在目标URL设置:http://127.0.0.1:5555,端口是和我们上面设置的容器服务端口一致。这样,我们就可以打开绑定的地址,看到已经可以进入Bitwarden自建的WEB密码管理器端。
第四、登录管理密码
完毕之后,我们就可以登录客户端管理。

我们登录自己创建的独有域名的Bitwarden账户,这个时候数据都在我们的云服务上门。看到登录界面,说明没有问题,我们开始需要创建账户。

注册账户之后,我们就可以登录。

这个界面我们应该熟悉的,之前老蒋有在本地客户端用官方的密码库的时候界面也是一样。
第五、安全设置禁止注册
一般密码库是我们自己使用的,所以我们需要在服务器端禁止他人注册账户。
docker run -d –name Bitwarden \ -e SIGNUPS_ALLOWED=false \ -v /www/wwwroot/bitwarden.laobuluo.com/:/data/ \ -p 5555:80 \ bitwardenrs/server:latest
这样,Bitwarden 什么私有密码库就是我们自己使用。同样,我们可以通过浏览器扩展、Bitwarden 客户端进行管理密码,这个密码库就比较安全,数据都在我们的云服务器上。如果我们有需要的话,也要定期备份数据。
到现在为止,我们基本上可以实现Bitwarden私有密码库管理,而且是免费当然是较为安全的。