Docker推荐 · 全平台私有密码库Vaultwarden

概述

Bitwarden是开源的专业密码管理软件,是目前最为常用的密码管理软件之一,主要特点有:

  • Windows、Mac、Linux、Android、iOS 全平台覆盖
  • 支持 Chrome、Edge、Safari、Firefox 等主流浏览器插件
  • 支持 密码文本信息表 甚至 附件 的加密保管
  • 支持自动填写网页、APP账号密码
  • 支持文件加密分享,方便地通过Send分享隐私文件、照片等
  • 支持生成两步验证器,为每个密码设置 TOTP 动态口令
  • 支持团队密码库,可在团队成员中共享团队密码
  • 支持密码检测报告,检测密码库中的重复密码、弱密码、已被泄露的密码等
  • 代码开源,支持自搭建,将数据全部掌握在自己手中

在安全性方面,Bitwarden的原理是使用一个足够复杂的主密码来管理其他所有的密码,采用 AES-256 位加密、加盐哈希和 PBKDF2 SHA-256 来保证所有信息的安全。它会定期进行第三方安全审计,通过了 GDPR、SOC 2、HIPAA、Pri­vacy Shield 和 CCPA 等认证。主密码无法通过任何方式恢复,如果忘记密码只能通过邮件获取你预先设置的密码提示。

Bitwarden 原始服务端使用 C# 编写,部署困难,且要求 MSSQL 等商业软件,运行需要 2GB 以上的内存;而Vaultwarden是一个使用 Rust 编写的非官方 Bitwarden 服务器实现,它与官方 Bitwarden 客户端兼容,运行Vaultwarden时只需要 10M 内存,可以说对硬件基本没有要求,对于不希望使用官方的占用大量资源的自托管部署而言,它是理想的选择。

Vaultwarden 除不支持官方企业版的部分功能(如事件日志、目录同步以及 SSO 登录)外,其他大部分功能均免费支持。并跟随官方版本保持及时更新。Vaultwarden 实现了 Bitwarden API 所需的大部分功能,因此桌面端、移动端、浏览器扩展等客户端均可直接使用 Bitwarden 官方的客户端应用程序。

部署

首先,你需要从Github上面下载.env.template,自行修改配置,详细参数可以参见中文文档

也可通过在部署命令中使用-e来指定以上参数

ADMIN_TOKEN可以为空,部署完成后再使用Vaultwarden中内置的PHC生成器生成,或直接使用大多数 Linux 发行版上提供的 argon2 CLI。

docker exec -it vwcontainer /vaultwarden hash
echo -n "MySecretPassword" | argon2 "$(openssl rand -base64 32)" -e -id -k 19456 -t 2 -p 1

然后在部署Docker时添加.env文件映射,通过Docker部署,我使用的命令如下:

docker run -d --restart=unless-stopped --name vaultwarden -v /root/Vaultwarden/:/data/ -v /root/Vaultwarden/vaultwarden.env:/.env -p 8000:80 vaultwarden/server:latest

运行命令后,即可部署完成,开放端口为8000,数据存放在/root/Vaultwarden/中,可根据需要自行修改。

添加Nginx反向代理

Vaultwarden必须进行加密才能访问。配置模板如下,可根据需要自行修改

server {  
    listen 443 ssl;
	http2 on;
    server_name www.example.com;

    ssl_certificate     /etc/nginx/cert/cf.pem;
    ssl_certificate_key /etc/nginx/cert/cf.key;

    ssl_session_timeout 1d;
    ssl_session_cache shared:MozSSL:10m;

    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA;
    ssl_prefer_server_ciphers off;

    location / {
        proxy_set_header    Upgrade            $http_upgrade;
        proxy_set_header    Connection         $connection_upgrade;
        proxy_set_header    Host               $host:$server_port;
        proxy_set_header    X-Real-IP          $remote_addr;
        proxy_set_header    X-Scheme           $scheme;
        proxy_set_header    X-Forwarded-For    $proxy_add_x_forwarded_for;
        proxy_pass http://0.0.0.0:8000;
    }
}
server {
    listen 80;
    server_name www.example.com;
    return 301 https://$host$request_uri; 
}

配置完反向代理后即可访问 your.domain/admin登录后台,登录密码为你设置的 ADMIN_TOKEN

版权声明:此篇文章《Docker推荐 · 全平台私有密码库Vaultwarden》作者:湙凇。未经许可严禁转载,转载与引用请首先注明作者(湙凇)、出处(https://blog.yisrime.xyz/02/06/docker%e6%8e%a8%e8%8d%90-%c2%b7-%e5%85%a8%e5%b9%b3%e5%8f%b0%e7%a7%81%e6%9c%89%e5%af%86%e7%a0%81%e5%ba%93vaultwarden.html)以及此段内容。
暂无评论

发送评论 编辑评论

|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇

版权所有 严禁复制