小心你的数据!我在谷歌搜到了我的账号密码!解决方法之Bitwarden_rs搭建教程

密码泄露

之前一直听说有各种沙雕公司明文储存你的账号密码,前几年还没当回事,但是现在各种网站,App都要求注册,数据也越来越重要。作为一个网络人一直用的是一个密码肯定不安全,而且在TG的社工机器人那查到了我的所有个人信息,包括密码这种敏感数据。同样今天我在谷歌成功搜到了我的账号密码,你没看错,我在搜索引擎中搜到了我的账号密码

密码检查

虽然给数据泄露的公司发了邮件,他们处理也很快,但是泄露都不知道是什么时候的事了,而且对于其中QQ邮箱的尝试登陆了几个试试,确实有的账号密码是正确的。邮件往来

所有网站使用同一个密码就意味着但凡有任何一个网站被脱裤,那么黑客就可以拿着账号密码登陆任何没有二次验证的网站。于是为了解决这个问题就有了这篇教程。

解决方案

每一个网站都生成独一无二的密码,网站+特定密码,比如优酷设置密码yk123456,微博设置wb123456。但是这么做第一比较容易破解,第二比较容易忘,比如建设银行的密码就可以有好几种写法jsyh123456,jh123456,js123456,容易把自己搞混。

那么第二种解决方案就是软件生成随机的密码,让软件帮忙自动填入。现在的现代手机和浏览器都支持自动填充账号密码,那么需要解决的就是用哪款软件。市面上的这种软件有很多,经过筛选最后剩下两种:

  1. 1Password
  2. Bitwarden

1Password

商业化的软件保证稳定性,公司成立时间长有优秀的解决方案,界面好看,使用方便。唯一的缺点就是贵,虽然有利用家庭订购合购钻漏洞的,但是这种方案相当于把密码从可信任的公司交给了个人,省着点钱简直就是本末倒置。那么想我这种穷B就只能用第二种方案了。

Bitwarden

Bitwarden是一个开源的,全平台的密码管理解决方案。并且支持私有部署。功能上完全可以满足需求。

搭建教程

Bitwarden本身是由.NET Core 3.1 SDK开发的,并且使用SQL Server 2017,这就导致了对服务器的要求有些高,后来发现了bitwarden_rs

这是一个用Rust编写的Bitwarden服务器API实现,与Bitwarden客户端兼容。

Bitwarden_rs相对于官方版本对服务器的要求要底,但是对于大量用户来讲没有官方版的好。由于就是几个人用,所以在这我们使用的是bitwarden_rs

  1. 安装DockerDocker Compose,网上教程太多了,就不在这赘述了。

  2. 首先新建一个目录用来存放Bitwarden的数据

    1
    mkdir /你的路径/bitwarden && cd /你的路径/bitwarden
  3. 新建配置文件:

    1
    sudo nano config.env

    并写入配置:

    1
    2
    3
    4
    5
    SIGNUPS_ALLOWED=true
    INVITATIONS_ALLOWED=true
    DATABASE_URL=/data/bitwarden.db
    ROCKET_WORKERS=10
    WEB_VAULT_ENABLED=true

    配置文件:

    • SIGNUPS_ALLOWED 是否允许注册,在这我们先允许不然一会不能新建第一个用户。
    • INVITATIONS_ALLOWED 是否允许邀请注册。
    • DATABASE_URL 数据库地址,相对于配置文件的目录。
    • ROCKET_WORKERS 设置服务器使用几个线程。10 是默认值,你可以根据机器性能和个人需求适当调整。
    • WEB_VAULT_ENABLED 设置是否开启 Web 客户端。如果开启,可以通过访问你的域名来打开 Web 客户端,用户登录后即可通过网页管理密码。

    然后新建docker的描述文件:

    1
    sudo nano docker-compose.yml

    写入配置文件:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    version: '3'

    services:
    bitwarden:
    image: mprasil/bitwarden:latest
    container_name: bitwarden
    restart: always
    volumes:
    - ./data:/data
    env_file:
    - config.env
    ports:
    - "映射的端口:80"
  4. 配置文件准备好后配置nginx反向代理到http://localhost:映射的端口

  5. 启动服务:

    1
    docker-compose up -d
  6. 启动成功后在浏览器中打开你的地址就可以访问到Bitwardenweb端。在页面中注册好账号后就可以使用了。如果你之前用过其他的密码管理工具Bitwarden同样支持导入。Bitwarden支持的格式基本覆盖了所有密码管理工具:

    支持格式 - Bitwarden (json)
    - Bitwarden (csv)
    - LastPass (csv)
    - Chrome (csv)
    - Firefox (csv)
    - KeePass 2 (xml)
    - 1Password (1pif)
    - Dashlane (json)
    - 1Password 6 and 7 Windows (csv)
    - Ascendo DataVault (csv)
    - Avast Passwords (csv)
    - Avira (csv)
    - Blur (csv)
    - Clipperz (html)
    - Enpass (csv)
    - Enpass (json)
    - F-Secure KEY (fsk)
    - GNOME Passwords and Keys/Seahorse (json)
    - Kaspersky Password Manager (txt)
    - KeePassX (csv)
    - Keeper (csv)
    - Meldium (csv)
    - mSecure (csv)
    - Myki (csv)
    - Opera (csv)
    - Padlock (csv)
    - Passbolt (csv)
    - PassKeep (csv)
    - Passman (json)
    - Passpack (csv)
    - Password Agent (csv)
    - Password Boss (json)
    - Password Dragon (xml)
    - Password Safe (xml)
    - PasswordWallet (txt)
    - RememBear (csv)
    - RoboForm (csv)
    - SafeInCloud (xml)
    - SaferPass (csv)
    - SplashID (csv)
    - Sticky Password (xml)
    - True Key (csv)
    - Universal Password Manager (csv)
    - Vivaldi (csv)
    - Zoho Vault (csv)
  7. 注册成功后关闭用户注册:

    在配置文件中把SIGNUPS_ALLOWED设置为false

    然后删除并重建容器,因为映射了数据库所以数据不会被删除:

    1
    docker-compose down && docker-compose up -d
  8. 到此为止服务端就搭建完成了,在设备上下载软件后在设置中填入你的服务器地址,用刚才注册的账号密码注册就可以开始使用了。

总结

密码的保护现在尤为重要,大家一定要保护好自己的账号密码。对于没有能力搭建的同学可以找一个会搭建的然后大家一起用,或者直接使用1password。至于其他免费的软件,只需要记住一句话免费的永远都是最贵的!

小心你的数据!我在谷歌搜到了我的账号密码!解决方法之Bitwarden_rs搭建教程

https://liunian.js.org/2020/05/22/小心你的数据!我在谷歌搜到了我的账号密码!解决方法之Bitwarden_rs搭建教程/

作者

刘念

发布于

2020-05-22

更新于

2023-11-22

许可协议

评论