本文目录
显示
1.
背景概述
2.
服务器准备
3.
搭建bitwarden个人密码管理器
3.1.
注册域名与配置解析
3.2.
申请与下载SSL证书
3.3.
安装bitwarden
3.4.
安装并配置Nginx
4.
使用bitwarden管理密码
4.1.
注册bitwarden账号
4.2.
禁止其他人注册
4.3.
Chrome上使用bitwarden
4.4.
iOS上使用bitwarden
5.
小结
5.1.
推荐阅读
【5分钟玩转Lighthouse】系列文章将为大家分享轻量应用服务器使用教程,提供丰富的实践指南,帮助大家快速上手并获得最佳产品体验。总是记不住账号密码怎么办?本期主要介绍如何借力Lighthouse实例与bitwarden,快速搭建属于自己的密码管理器。
背景概述
在网上冲浪的每一天,我们会进入不同的网站和APP享受各类服务。「账号密码」就如同各个平台的身份证体系,来帮助确认我们独特的身份。
但显然,「账号密码」远不如身份证便捷安全。在互联网五花八门的使用场景下,如此多账号使用统一密码,就存在一个密码被攻破则其它密码都失效的灾难性后果。但若分别设置,记住这些密码又成了一个难题。
虽然当前市场上有众多密码管理工具,如1Password、OneSafe、LastPass等,但这些工具大多数需要收费,并且是将密码存储在其提供的服务器上。把密码交给别人管理,多少还是有些不放心。
本教程将为大家介绍在腾讯云轻量应用服务器 Lighthouse 上,基于Docker搭建bitwarden私人密码管理器,助你轻松解决密码管理这件大事。
为何选择 Lighthouse 和 bitwarden?
轻量应用服务器 Lighthouse 创建简单,性价比高,自带Docker镜像。
Bitwarden是一款有免费版且开源的密码管理工具。允许自建密码管理服务,完全不用担心密码被别人管理的问题。同时 biwarden 对Windows,Linux,Mac,iPhone,Android以及Chrome等多种主流浏览器都支持,完全满足个人跨平台、跨终端的密码管理需求。
服务器准备
我们首先在腾讯云轻量应用服务器 Lighthouse 购买页面购买一台服务器。具体配置如下:
- 地域:中国香港
- 镜像:应用镜像Docker
- 实例套餐:CPU 2核 内存2G SSD 80GB 峰值带宽 30Mbps 每月流量3072GB
- 实例名称:输入 bitwarden 即可
点击“立即购买”,付款之后服务器就开始创建了。当服务器状态为“运行中”时,我们就可以使用了。
Bitwarden 建议使用CPU2核、内存2G、磁盘25G的配置,因此我们选择了以上套餐。搭建 bitwarden 服务器我们使用Docker镜像的方式,直接选择 Lighthouse 自带的Docker镜像即可。有了服务器,接下来我们就要搭建 bitwarden 密码管理器了。
搭建bitwarden个人密码管理器
注册域名与配置解析
为了方便记忆 bitwarden 密码管理器服务地址,我们先申请一个域名以方便访问。进入轻量应用服务器的实例详情页面,点击 “注册域名”。
接下来参考腾讯云官方文档《域名注册》完成域名的购买、注册和实名认证。如下图所示,域名购买成功。
域名解析:点击域名后的解析,添加一条A记录,主机记录填 “WWW”,记录值填写轻量应用服务器的外网IP。
申请与下载SSL证书
为了保证轻量应用服务器通信的安全性,我们要使用HTTPS协议进行通信。因此我们再申请SSL证书具体参考腾讯云官方文档《SSL证书新手入门》,申请“域名型免费版SSL证书”即可。申请好证书后,点击“下载证书”,留待后面上传到轻量应用服务器上,配置Nginx使用的SSL证书。
安装bitwarden
我们先部署 bitwarden,然后使用Nginx作为反向代理,将请求转发到 bitwarden服务器上。
r /data/bitwarden docker run -d \ --rm \ --name bitwarden \ -p 8080:80 \ -p 3012:3012 \ -e SIGNUPS_ALLOWED=true \ -e WEB_VAULT_ENABLED=true \ -e DOMAIN=https://mydomain.cn \ -v /data/bitwarden:/data \ bitwardenrs/server:latest 上面命令的各个参数含义如下: -d 在后台运行 --rm 容器停止运行后,自动删除容器文件 --name bitwarden容器的名字为bitwarden -p 8080:80 容器的端口80映射到8080,在Nginx配置 -p 3012:3012 容器的端口3012映射到3012 -e SIGNUPS_ALLOWED=true 设置环境变量SIGNUPS_ALLOWED=true允许用户注册 -e WBE_VAULT_ENABLE=true 设置环境变量WBE_VAULT_ENABLE=true -e DOMAIN=https://mydomain.cn设置域名,需要替换成自己申请的域名 -v /data/bitwarden:/data 容器的/data/目录映射到宿主机的/data/bitwarden目录
安装并配置Nginx
接下来使用docker安装Nginx并配置SSL证书与反向代理。
docker run \ --rm \ --name nginx \ -d \ nginx 上面命令的各个参数含义如下: --rm 容器停止运行后,自动删除容器文件 --name nginx 容器的名字为nginx -d 在后台运行
docker cp nginx:/etc/nginx /data 上面命令的含义:将nginx容器内的/etc/nginx目录复制到宿主机的/data目录
配置SSL证书与反向代理:解压从腾讯云证书控制台下载的SSL证书文件。目录结构如下,我们使Nginx目录中的.crt和.key文件使用。
mkdir /data/nginx/certs cp ./Nginx/1_mydomain _bundle.crt /data/nginx/certs cp ./Nginx/2_mydomain.key /data/nginx/certs
打开nginx文件/data/nginx/conf.d/default.conf中新增如下内容:
server { listen 80; ……此处省略无修改的内容 return 301 https://$host$request_uri; #将http的域名请求转成https }
server { listen 443 ssl http2; server_name localhost; ssl on; ssl_certificate /etc/nginx/certs/1_mydomain_bundle.crt; #配置证书文件 ssl_certificate_key /etc/nginx/certs/2_mydomain.key; #配置证书私钥文件 ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; #配置反向代理,请求代理发送到8080端口 location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; root /usr/share/nginx/html; index index.html index.htm; } location /notifications/hub { proxy_pass http://127.0.0.1:3012; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } location /notifications/hub/negotiate { proxy_pass http://127.0.0.1:8080; } }
重启nginx使配置生效。至此我们就完成了 bitwarden 密码管理器的安装和部署。
docker restart nginx
使用bitwarden管理密码
访问我们的域名就可以访问 bitwarden 的主页,接下来我们来介绍一下如何使用自己 bitwarden 管理我们各个平台与各个终端上的密码。
注册bitwarden账号
首先我们使用自己的电子邮件地址注册一个账号。接下来返回到登录页面,输入电子邮件地址,和主密码即可登录。下图显示注册账号后为空的密码库。
禁止其他人注册
由于这个 bitwarden 服务器是供个人使用,我们在注册完账号后,要关闭注册功能,防止他人注册。
# 先停止bitwarden容器 docker stop bitwarden # 设置环境变量不允许注册用户-e SIGNUPS_ALLOWED=false,再启动bitwarden容器 docker run -d \ --rm \ --name bitwarden \ -p 8080:80 \ -p 3012:3012 \ -e SIGNUPS_ALLOWED=false \ -e WEB_VAULT_ENABLED=true \ -e DOMAIN=https://mydomain \ -v /data/bitwarden:/data \ bitwardenrs/server:latest
此时再注册账号时,会提示Registration not allowed or user already exists.这样的错误。
Chrome上使用bitwarden
在chrome网上应用店搜索 bitwarden,并添加至Chrome中。
接下来我们就体验一下,bitwarden 自动保存密码的功能。在Chrome浏览器中,我们登录果壳网,bitwarden 会自动检测需要保存的用户名和密码。点击“是的,现在保存”即可。
接下来,我们退出账号,再次重新登录,点击 bitwarden 中的登录项目,account.guokr.com,密码用户名和密码就会自动填充好。
iOS上使用bitwarden
在AppStore上搜索 bitwarden,下载 bitwarden 密码管理器。打开APP,点击设置图标,设置我们搭建的 bitwarden 服务器域名。
点击“登录”,用注册的 bitwarden 账号登录到我们搭建的服务器上。接下来用safari浏览器打开account.guokr.com,此时safari会自动弹出“使用Bitwarden,登录guokr.com”,选择我们要登录的账号,确定登录。
Bitwarden就会自动填充上用户名和密码,登录成功。
小结
通过借助轻量应用服务器 Lighthouse 和 bitwarden 我们成功搭建了个人密码管理器。轻量应用服务器提供的Docker镜像,为我们提供了一键运行容器的环境。Bitwarden 提供的跨平台、跨终端能力,让我们再也不用为管理密码头疼了。最重要的是 bitwarden 自行部署能力,让我们把密码安全掌握在自己的手里,这才是密码管理器最让人放心的地方。
推荐阅读
- 使用腾讯云轻量应用服务器Lighthouse实例、用Matomoo应用镜像搭建网站流量统计系统
- 腾讯云轻量应用服务器两周年庆活动,老用户专属特惠续费,最低0.5折起,还有限时免费升配、新购福利