总是记不住账号密码?这有个贴心操作

2021-03-04 19:10:48 浏览数 (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 服务器上。

代码语言:javascript复制
mkdir /data/bitwardendocker 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目录

Docker部署bitwarden

 安装并配置Nginx

接下来使用docker安装Nginx并配置SSL证书与反向代理。

代码语言:javascript复制
docker run            --rm            --name nginx            -d            nginx           上面命令的各个参数含义如下:--rm 容器停止运行后,自动删除容器文件--name nginx 容器的名字为nginx-d 在后台运行

安装Nginx

代码语言:javascript复制
docker cp nginx:/etc/nginx /data
上面命令的含义:将nginx容器内的/etc/nginx目录复制到宿主机的/data目录

拷贝配置

配置SSL证书与反向代理:解压从腾讯云证书控制台下载的SSL证书文件。目录结构如下,我们使Nginx目录中的.crt和.key文件使用。

代码语言:javascript复制
mkdir /data/nginx/certscp ./Nginx/1_mydomain _bundle.crt /data/nginx/certscp ./Nginx/2_mydomain.key /data/nginx/certs

打开nginx文件/data/nginx/conf.d/default.conf中新增如下内容:

代码语言:javascript复制
server {    listen 80;    ……此处省略无修改的内容    return 301 https://$host$request_uri; #将http的域名请求转成https}

HTTP 80端口新增如上配置

代码语言:javascript复制
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;  }
}

HTTPS 443端口新增如上配置

重启nginx使配置生效。至此我们就完成了 bitwarden 密码管理器的安装和部署。

代码语言:javascript复制
docker restart nginx

重启Nginx

使用bitwarden管理密码

访问我们的域名就可以访问 bitwarden 的主页,接下来我们来介绍一下如何使用自己 bitwarden 管理我们各个平台与各个终端上的密码。

 注册bitwarden账号

首先我们使用自己的电子邮件地址注册一个账号。接下来返回到登录页面,输入电子邮件地址,和主密码即可登录。下图显示注册账号后为空的密码库。

 禁止其他人注册

由于这个 bitwarden 服务器是供个人使用,我们在注册完账号后,要关闭注册功能,防止他人注册。

代码语言:javascript复制
# 先停止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服务器URL地址

接下来我们就体验一下,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 自行部署能力,让我们把密码安全掌握在自己的手里,这才是密码管理器最让人放心的地方。

推荐阅读

故事|不懂代码的他,如何上云?

故事|用科技,点亮盲人新视界

0 人点赞