一、简介

Vaultwarden是著名的Bitwarden项目的一个分支,是一个社区驱动的项目,使用Rust语言编写。它是Bitwarden的轻量级自托管替代方案,完全兼容Bitwarden客户端协议,支持通过Docker或Podman极速部署,几分钟内就能完成上线,极为便捷,尤其适合服务器资源有限、追求轻量化的用户。

二、主要特点

  1. 自托管:可以将其托管在自己的服务器或基础设施上,完全控制数据,减少对第三方服务和云提供商的依赖。
  2. 端到端加密:采用强大的端到端加密来保护密码和其他敏感信息,所有数据在发送到服务器之前都会在设备上进行加密,只有用户可以访问解密的数据。
  3. 开源和透明度:是一个开源项目,源代码可公开供审查,这种透明度促进信任,并允许安全专家审核代码,增强平台的整体安全性。
  4. 跨平台兼容性:服务器可与官方Bitwarden客户端配合使用,适用于各种平台,包括Windows、macOS、Linux、iOS和Android,能从任何设备轻松访问密码。
  5. 浏览器集成:使用Bitwarden的浏览器扩展,可将自托管Vaultwarden服务器与所有主要Web浏览器无缝集成,在浏览网页时自动填充登录凭据并直接访问密码。
  6. 活跃的社区支持:受益于活跃且参与的开发者和用户社区,为其持续的开发和支持做出贡献。
  7. 经济高效:与订阅基于云的密码管理服务相比,自托管Vaultwarden是一种经济高效的选择,特别是对于拥有特定托管资源的个人或组织而言。
  8. 资源占用低:相比官方服务器,内存占用显著降低,仅需约10MB内存。
  9. 完整功能支持:支持密码存储、安全笔记、信用卡信息、身份信息等核心功能。

三、部署要求

  1. Docker Engine:用于容器化部署和管理。
  2. Docker Compose:支持configs的版本,用于多容器应用的编排。
  3. 推荐服务器配置:CPU为2核心,内存为2GB RAM,存储为20GB+可用空间。
  4. 网络环境:要求支持https访问,需配备tls证书,如果是自签证书,需要浏览器信任。

四、部署步骤(以Docker Compose为例)

  1. 安装Docker和Docker Compose:

    • 如果尚未安装Docker,可以参考相关指南,如在Ubuntu 22.04、Debian 12 (Bullseye)、AlmaLinux/Rocky Linux、Fedora、Linux Mint 21、树莓派等系统上的安装方法。
    • 安装Docker Compose,可使用以下命令:
1sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-linux-$(uname -m)" -o /usr/local/bin/docker-compose
2sudo chmod +x /usr/local/bin/docker-compose
  1. 创建部署目录并编辑部署文件:

    • 创建部署目录:
1mkdir -p /data/vaultwarden &&  cd /data/vaultwarden
- 在部署目录下,创建docker-compose.yaml文件,示例内容如下:
1version: '3'
2services:
3 vaultwarden:
4 container_name: vaultwarden
5 image: vaultwarden/server:latest
6 restart: unless-stopped
7 volumes:
8 - ./data/:/data/
9 ports:
10 - 8080:80
11 environment:
12 - DOMAIN=https://subdomain.yourdomain.com # 这是您希望与您的Vaultwarden实例关联的域名。
13 - LOGIN_RATELIMIT_MAX_BURST=10 # 允许在一阵登录/两步验证尝试中的最大请求次数。
14 - LOGIN_RATELIMIT_SECONDS=60 # 这是来自同一IP的登录请求之间的平均秒数,在Vaultwarden限制登录次数之前。
15 - ADMIN_RATELIMIT_MAX_BURST=10 # 这与LOGIN_RATELIMIT_MAX_BURST相同,只争对admin面板。
16 - ADMIN_RATELIMIT_SECONDS=60 # 这与LOGIN_RATELIMIT_SECONDS相同
17 - ADMIN_SESSION_LIFETIME=20 # 会话持续时间
18 - ADMIN_TOKEN=YourReallyStrongAdminTokenHere # 此值是Vaultwarden管理员面板的令牌(一种密码)。为了安全起见,这应该是一个长的随机字符串。如果未设置此值,则管理员面板将被禁用。建议openssl rand -base64 48生成ADMIN_TOKEN确保安全
19 - SENDS_ALLOWED=true # 此设置决定是否允许用户创建Bitwarden发送 - 一种凭证共享形式。
20 - EMERGENCY_ACCESS_ALLOWED=true # 此设置控制用户是否可以启用紧急访问其账户的权限。例如,这样做可以在用户去世后,配偶可以访问密码库以获取账户凭证。可能的值:true / false。
21 - WEB_VAULT_ENABLED=true # 此设置决定了网络保险库是否可访问。一旦您配置了您的账户和客户端,停止您的容器,然后将此值切换为false并重启Vaultwarden,可以用来防止未授权访问。可能的值:true/false。
22 - SIGNUPS_ALLOWED=true # 此设置控制新用户是否可以在没有邀请的情况下注册账户。可能的值:true / false。
- 注意:`DOMAIN` 改成最后要用的域名形式,`ADMIN_TOKEN` 可以在ssh里面输入 `openssl rand -base64 48` 生成。

3. 创建Vaultwarden容器:

1docker-compose up -d
  1. 配置反向代理(可选):为了便于长期维护和提供HTTPS服务,推荐使用Nginx或Caddy等反代服务。例如,使用Caddy作为反向代理,它可以自动颁发Let’s Encrypt SSL证书。

五、访问Vaultwarden服务

安装以后,就可以通过ip:8080访问Vaultwarden密码管理面板。如果配置了反向代理和HTTPS,可通过域名进行安全访问。

可轻便docker部署的密码保存系统:Vaultwarden的更多相关文章

  1. 使用docker部署WordPress博客系统(win10企业版)

    docker介绍: docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相 ...

  2. 利用docker部署oxidized网络设备备份系统

    随着网络设备的增多,通过人手备份网络设备倍感压力,而且效率低.有编程基础的人可能会通过Python的parimiko 或者netmiko 连接到设备操作 把文件通过ftp 上传到FTP服务器, 在通过 ...

  3. 利用docker部署elk交换机日志分析

    今天我们来聊一下利用docker部署elk日志分析系统,这里解析一下elk是啥东西.elk分别是Elasticsearch,Logstash和Kibana的首字母缩写. Elasticsearch是一 ...

  4. Docker 方式部署 Solo 博客系统总结

      此篇为Docker部署方式,另有Tomcat部署方式,请参考文章<Tomcat 方式部署 Solo 博客系统总结>   最近搭建了一个博客系统,作为自己的主页,方便记录一些平时所见所闻 ...

  5. Centos 7使用docker部署LAMP搭建wordpress博客系统

    0.简要概述 LAMP是目前比较流行的web框架,即Linux+Apache+Mysql+PHP的网站架构方案.docker是目前非常流行的虚拟化应用容器,可以为任何应用创建一个轻量级.可移植的容器. ...

  6. 使用Docker部署监控系统,Prometheus,Grafana,监控服务器信息及Mysql

    使用Docker部署监控系统,Prometheus,Grafana,监控服务器信息及Mysql 一.docker部署prometheus监控系统 1.1 配置安装环境 1.1.1 安装promethe ...

  7. Docker学习笔记三:Docker部署Java web系统

    Docker部署Java Web系统 1.在root目录下创建一个路径test/app mkdir test && cd test&& mkdir app && ...

  8. 使用Docker部署Spring-Boot+Vue博客系统

    在今年年初的时候,完成了自己的个Fame博客系统的实现,当时也做了一篇博文Spring-boot+Vue = Fame 写blog的一次小结作为记录和介绍.从完成实现到现在,也断断续续的根据实际的使用 ...

  9. liunx系统docker部署.net core3.1

    此篇文章演示基本的基于docker部署.netcore服务,liunx系统腾讯云ubuntu,.net core版本3.1. 1.安装docker apt install docker.io 2.拉取 ...

  10. Tomcat 方式部署 Solo 博客系统总结

      此篇为Tomcat部署方式,另有Docker部署方式,请参考文章<Docker 方式部署 Solo 博客系统总结> 一.环境和文件准备 服务器:购买的阿里云服务器,系统为Linux(C ...

随机推荐

  1. SQL SERVER日常运维(二)

    以下语句请使用SA用户或者有DBA权限的用户进行执行,否则可能会出现权限不足报错. 查看当前用户查看当前用户 select system_user; 检查SQL Agent是否开启 IF EXISTS ...

  2. 天翼云弹性高性能计算Portal简介

    本文分享自天翼云开发者社区<天翼云弹性高性能计算Portal简介>,作者:小燕同学 1.平台概述 天翼云官网已上线公有云弹性高性能计算(EHPC)产品,公有云EHPC产品主要由管理员控制, ...

  3. 喜讯!天翼云斩获NLP国际顶会比赛两项荣誉

    近日,NLP国际顶会ACL(The Association for Computational Linguistics)进行的国际赛事WASSA 2023(13th Workshop on Compu ...

  4. IDEA 接入 DeepSeek,太酷了!

    你好,我是 Guide.前两天,我发文提到 DeepSeek 的回答推荐了我的资料 <JavaGuide 面试突击版>(PDF):DeepSeek 的这波回答我给满分!. 这篇文章简单介绍 ...

  5. 二次剩余和 Cipolla 算法

    首先是素数模同余方程的相关理论. 下设 $p\in $ 是质数,\(f(x)=\sum_{i=0}^n a_ix^i\),\(x\in \Z_p,p\not\mid a_n\). 引理 1 如果 \( ...

  6. flutter-真机调试ios Traceback (most recent call last)

    1 Traceback (most recent call last): 2 File "/tmp/C5FDB25B-C7F4-462E-8AC9-7FF9D1A50F21/fruitstr ...

  7. 腾讯ima接入deepseek-r1,借用别人脑子用用成真了~

    大家好,我是汤师爷! 最近,腾讯发布了一款ima产品,主打用AI来帮你搜索信息.管理知识库. 说实话,一开始用混元大模型,感觉不咋地,很鸡肋的. 不过最近腾讯把DeepSeek R1接进来了,一下子解 ...

  8. Vue3 数据响应式原理与高效数据操作全解析

    一.Vue3 数据响应式原理 (一)Proxy 替代 Object.defineProperty 在 Vue2 中,数据响应式是通过 Object.defineProperty 实现的.这种方法虽然能 ...

  9. const char*和char*的区别

  10. /proc的相关知识

    /proc的相关知识 /proc 介绍 /proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过这些文件查看有关系统硬件及当前正在运行进程的信息,甚至可 ...