基于Docker搭建bitwarden密码管理服务器

2021-01-06 19:47:20 25点赞 189收藏 33评论

0 什么是密码管理

在这个数字化、信息化的时代,我们的日常生活中充斥着大量的账户信息,有银行的账户密码、手机卡的服务密码、各种社交软件的登录密码。各种密码如果设置成不一样的我们很难记住,而设置为一样的则很不安全。虽然各种服务商都在尽可能地方便用户登录,比如设置扫码登录、手机验证码登录,但这些登陆方式都无法彻底取代密码。这个时候就需要我们通过一些手段辅助我们管理密码。

其实密码管理这个服务我们日常生活中已经是经常用到了。比如苹果家的钥匙串服务可以保存我们日常生活中的密码,又比如各种浏览器的记住密码功能。在我们需要登陆的时候可以自动的为我们填充密码。但是这些密码管理器也有一些问题,这些问题不是技术上的,而是商业上的。比如苹果的钥匙串无法在Windows平台使用。尤其是某些行业还是无法脱离Windows平台。这个时候一些跨平台的密码管理服务就可以很好的弥补这个问题。

1 搭建密码管理服务器

1.1 自己搭建密码服务器的优点

自行搭建密码管理服务器自然是有一些优点的。
① 数据存储在自有服务器中。
② 无使用费用(服务器费用除外)。
③ 完全免费,没有密码条目数量的限制。
④ 项目开源。

1.2 Bitwarden_rs

Bitwarden是一款开源密码管理软件,和Keepass、LastPass相似,支持全平台客户端,支持自建服务。

bitwarden_rs 是一个用于本地搭建 Bitwarden 服务器的第三方 Docker 项目。

bitwarden_rs 用 Rust 编写,与官方 Bitwarden 客户端兼容,并改用 SQLite 数据库,相对于官方版使用 MSSQL 数据库要求至少 2GB 内存,可以说 bitwarden_rs 对硬件基本没有要求。

bitwarden_rs 除不支持官方企业版的部分功能(如群组控制、日志审核、目录同步、以及基于企业组织层面的 DUO Security 两步登录)外,其他所有功能均免费支持。并跟随官方版本保持及时更新。

bitwardenbitwarden

1.3 通过docker安装Bitwarden_rs

在上一篇中,我在NUC5PPYH中安装宝塔面板进行基本的管理。在宝塔面板中有docker管理器,我们可以比较方便的使用它管理Docker。但是需要注意的是该管理器启动的docker无法自动重启。我们需要通过命令行来修改。

接下来我们一步步的安装。
① 点击【镜像管理】进入该页面。

基于Docker搭建bitwarden密码管理服务器

② 点击【获取镜像】按钮,并在框中输入【bitwarden_rs】,而后点击【获取镜像】按钮。

基于Docker搭建bitwarden密码管理服务器

获取镜像完毕后,管理器的列表中会出现镜像。

③ 进入【容器列表】页面

基于Docker搭建bitwarden密码管理服务器

④ 点击【创建容器】,选择镜像【bitwardenrs_server:latest】;端口映射第一个是容器端口,填写为80,第二个是映射到主机上的端口,可以随便写一个可用的端口; 【目录映射】则是让容器把数据存到一个指定的目录。设置完这两个之后一定要点击蓝色框中的加号才能有效。

基于Docker搭建bitwarden密码管理服务器

⑤ 点击【提交】,完成容器创建。创建完成之后容器会自动运行。此时需要在宝塔面板的安全界面,放行我们刚刚映射的主机端口。

完成之后就可以访问http://主机IP:映射端口进入登录界面。
然而,此时我们会发现无法登录,甚至无法注册。这是因为bitwarden_rs强制要求开启https。

接下来我们通过nginx设置反向代理,为bitwarden_rs开启https。

1.3 Nginx反代理

bitwarden_rs docker可以通过添加环境变量配置SSL证书。但是官方不推荐通过该方法开启SSL。因此我们通过Nginx反代理完成。Nginx反代理可以非常方便的实现域名绑定。

① 点击宝塔面板的【网站】选项(已提前安装好LNMP环境);点击【添加站点】。

基于Docker搭建bitwarden密码管理服务器

② 在域名框中输入你想绑定的域名。例如bitwarden.docker.com。由于我们这个站点只用于反代理,因此【PHP版本】可以选择【纯静态】。

③ 点击【提交】按钮,完成站点创建。

基于Docker搭建bitwarden密码管理服务器

④ 选择【SLL】,配置证书。由于我使用的是阿里云的域名。阿里云可以很方便的为二级域名申请单个的CA证书。因此选择【其他证书】,而后将对应的私钥和公钥通过记事本打开,把内容复制到两个输入框中,点击【保存】开启SSL。

基于Docker搭建bitwarden密码管理服务器

⑤ 打开强制HTTPS,不允许HTTP访问。

⑥ 点击【反向代理】,添加反向代理。代理名称自拟;目标URL填写为127.0.0.1(本机):映射端口。其他默认即可。点击【提交】完成创建。

基于Docker搭建bitwarden密码管理服务器

至此即完成了SSL反向代理设置。此时用户可以通过https://ip:443 访问bitwarden_rs。(绑定了域名请使用https://域名访问。)

通过添加多个站点,绑定不同的二级域名,可以实现访问不同的端口服务。

2 使用bitwarden

2.1 使用两步验证提高安全性

在注册好初始账户之后,即可登录。在这个时候只需要【账户】和【密码】就可以登录系统了。然而这还是不安全,因为如果我们的主密码泄漏之后,其他人就可以登录,我们系统中所存储的个人密码就会泄漏出去。那有没有什么方法可以进一步提高安全性呢?答案是开启【两步登录】。

大家都知道国内很多网络服务 (如淘宝、银行),除了正确的帐号密码之外,常常还需要额外给你发一条手机短信验证码,以此进一步确认你是帐号的真正主人。

这其实就是「两步验证」或者叫做「双因素验证」的一种实现方式,它这里第二步验证是靠手机短信来发送验证码的。
还有一种两步登录就如同我们经常使用的QQ一样,通过诸如【QQ安全中心】中的动态验证码来确认身份。

基于Docker搭建bitwarden密码管理服务器

在bitwarden中我们同样可以实现类似的功能。

① 在设置页面中,选择【两步登录】选项。

基于Docker搭建bitwarden密码管理服务器

② 我们使用第一种程序【验证器应用】,手机端下载【Authy】应用。

基于Docker搭建bitwarden密码管理服务器

基于Docker搭建bitwarden密码管理服务器

③ 点击【管理】后,输入【主密码】继续设置。

基于Docker搭建bitwarden密码管理服务器

④ 手机端扫码添加。添加完成后,网页端会要求输入手机上是数字以确认添加。

基于Docker搭建bitwarden密码管理服务器

完成添加后,我们再登录系统时就需要输入手机上的验证码了。这个验证码是根据时间与密钥变化的,因此只要手机的时间准确,不联网也可以生成验证码。

建议在另外一个设备上登录authy账号,避免日常使用的设备丢失后无法进入系统。

2.2 使用其他客户端

bitwarden支持windows客户端、Microsoft edge插件、Google chrome插件、iOS客户端、安卓客户端。在这里以Windows客户端为例进行说明。其他客户端操作类似。

bitwarden Windows客户端可以在Microsoft应用商店中下载。

基于Docker搭建bitwarden密码管理服务器

也可以从官网下载。

安装完成之后打开客户端。
① 点击左上角的齿轮按钮,设置服务器地址

基于Docker搭建bitwarden密码管理服务器

② 输入服务器URL。

基于Docker搭建bitwarden密码管理服务器

③ 输入【账号】和【主密码】。

基于Docker搭建bitwarden密码管理服务器

④ 点击【登录】,此时会提示输入【身份验证器应用】中的6位数验证码。打开手机上的【authy】应用,输入验证码。

基于Docker搭建bitwarden密码管理服务器

⑤ 登录完毕后即可看到密码列表。

基于Docker搭建bitwarden密码管理服务器

2.3 设置docker自动重启容器

前面讲到宝塔的docker管理器无法实现自动重启容器。因此如果服务器意外关机之后就需要我们手动启动容器,这很不方便。因此我们需要设置其自动重启。

① 通过putty连接服务器。

② 查看dockers容器列表。记录下容器ID

docker ps

基于Docker搭建bitwarden密码管理服务器


③ 通过指令更新容器,使其具备–restart=always

docker update --restart=always 容器ID(或者容器名)

以上,完毕。

展开 收起

Office 365 家庭版

Office 365 家庭版

249元起

任天堂 Nintendo Switch《舞力全开 Just Dance》 游戏兑换卡Token 仅支持国行主机 体感舞蹈健身

任天堂 Nintendo Switch《舞力全开 Just Dance》 游戏兑换卡Token 仅支持国行主机 体感舞蹈健身

299元起

微软 Microsoft 365 个人版 彩盒包装 | 1年订阅 1人使用 正版高级Office应用 1T云存储 PC/Mac/移动设备通用

微软 Microsoft 365 个人版 彩盒包装 | 1年订阅 1人使用 正版高级Office应用 1T云存储 PC/Mac/移动设备通用

309元起

微软 Microsoft 365 家庭版 彩盒包装 | 1年订阅 至多6人 正版高级Office应用 1T云存储 PC/Mac/移动设备通用

微软 Microsoft 365 家庭版 彩盒包装 | 1年订阅 至多6人 正版高级Office应用 1T云存储 PC/Mac/移动设备通用

339元起

微软 Microsoft 365 家庭版 电子秘钥 | 1年订阅 多至6人 正版高级Office应用 1T云存储 PC/Mac/移动设备通用

微软 Microsoft 365 家庭版 电子秘钥 | 1年订阅 多至6人 正版高级Office应用 1T云存储 PC/Mac/移动设备通用

329元起

微软 Microsoft 365 个人版 电子秘钥 | 1年订阅 1人使用 正版高级Office应用 1T云存储 PC/Mac/移动设备通用

微软 Microsoft 365 个人版 电子秘钥 | 1年订阅 1人使用 正版高级Office应用 1T云存储 PC/Mac/移动设备通用

204元起

微软(Microsoft)Office365 个人版 正版办公软件 可供1用户5设备 一年新订或续费 365个人版 在线发送

微软(Microsoft)Office365 个人版 正版办公软件 可供1用户5设备 一年新订或续费 365个人版 在线发送

199元起

正版WPS超级会员 / WPS会员 / WPS稻壳会员 兑换码 月卡/年卡 PDF转Word WPS 超级会员1年

正版WPS超级会员 / WPS会员 / WPS稻壳会员 兑换码 月卡/年卡 PDF转Word WPS 超级会员1年

125元起

微软(Microsoft)Office365 个人版 正版办公软件 可供1用户5设备 一年新订或续费 365个人版在线发送+电子发票

微软(Microsoft)Office365 个人版 正版办公软件 可供1用户5设备 一年新订或续费 365个人版在线发送+电子发票

229元起

微软 Office365(现已升级Microsoft365)家庭版正版一年新订或续费 6用户多设备 365 家庭版在线发送+电子发票

微软 Office365(现已升级Microsoft365)家庭版正版一年新订或续费 6用户多设备 365 家庭版在线发送+电子发票

269元起

微软 Office 家庭和学生版 2019 电子秘钥版 | 正版授权 含Word/Excel/PPT 适用Windows 10 PC/Mac 非商用

微软 Office 家庭和学生版 2019 电子秘钥版 | 正版授权 含Word/Excel/PPT 适用Windows 10 PC/Mac 非商用

689元起

正版WPS超级会员 / WPS会员 / WPS稻壳会员 兑换码 月卡/年卡 PDF转Word WPS会员1年

正版WPS超级会员 / WPS会员 / WPS稻壳会员 兑换码 月卡/年卡 PDF转Word WPS会员1年

69元起

Microsoft 微软 Office 365 个人版 1年订阅

Microsoft 微软 Office 365 个人版 1年订阅

398元起

微软 (Microsoft) Office 365 家庭版/个人版 激活密钥 1年订阅 正版办公软件 office 365个人版一年【支持5台设备】

微软 (Microsoft) Office 365 家庭版/个人版 激活密钥 1年订阅 正版办公软件 office 365个人版一年【支持5台设备】

229元起

用友财务软件 好会计专业版 畅捷通T3在线版会计记账软件 专业版30天试用

用友财务软件 好会计专业版 畅捷通T3在线版会计记账软件 专业版30天试用

378元起

用友财务软件 好会计普及版 畅捷通T3在线版会计记账软件 专业版30天试用

用友财务软件 好会计普及版 畅捷通T3在线版会计记账软件 专业版30天试用

498元起
33评论

发表评论请 登录
  • 最新
  • 最热
评论举报

请选择举报理由

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
189
扫一下,分享更方便,购买更轻松