【Docker】搭建一款开源、安全且跨平台的密码管理工具 - Bitwarden
前言
本教程基于飞牛系统fnOS 0.8.41的Docker Compose功能进行搭建。
简介
Bitwarden 是一款开源、安全且跨平台的密码管理工具,旨在帮助用户高效管理各类账户密码,同时提升数据安全性。以下是其核心特点:
核心功能与优势
密码存储与自动填充:支持存储登录凭证、支付信息、安全笔记等敏感数据,并通过浏览器扩展或客户端实现自动填充功能,减少手动输入。
密码生成:内置随机密码生成器,可创建高强度复杂密码,避免重复使用简单密码的风险。
跨平台同步:提供全平台支持(Windows、macOS、Linux、iOS、Android)及浏览器插件,确保密码库在所有设备间实时同步。
安全性保障
端到端加密:用户数据在本地加密后上传服务器,仅用户掌握解密密钥,官方无法访问。
开源透明:代码公开接受社区审查,安全性经多次验证,支持自托管服务以完全掌控数据存储。
合规认证:通过 GDPR、SOC2 等国际安全合规认证,提供企业级数据保护。
部署与使用灵活性
官方云服务:免费基础版已满足个人需求,付费版(约 $10/年)解锁密码健康报告、1GB加密存储等高级功能。
自托管选项:用户可自行搭建服务器(如通过 Docker),实现私有化部署,适合注重数据控制权的用户。社区项目 Vaultwarden(原 Bitwarden_RS)进一步优化了资源占用,支持在树莓派等低配设备运行。
适用场景
个人用户:免费版即可满足日常密码管理需求。
团队与企业:支持组织共享密码库和权限管理,适合家庭或小型团队协作。
部署
打开Docker管理器,选择“Compose”,点击右上角“新增项目”。
在创建项目窗口中填写项目名称和选择数据存放路径,然后选择“创建docker-compose.yml”,将下列代码根据自己实际情况修改后复制粘贴进去。
version: '3.8' services: vaultwarden: image: vaultwarden/server:latest container_name: bitwarden-1 restart: always environment: - ADMIN_TOKEN=RbHarw2sTuoxrVs0 # 管理界面访问令牌(通过 `https://tools.uptoz.cn/token-generator` 生成) - SIGNUPS_ALLOWED=false # 是否允许注册(true/false) volumes: - ./data:/data # 持久化数据目录 ports: - "1180:80" # 映射 HTTP 端口(建议通过反向代理绑定 HTTPS)
勾选“创建项目后立即启动”,最后点击“确定”。
等待构建完成,由于Bitwarden的各项功能都需要使用https连接,可以通过反向代理配置HTTPS进行访问。
以下为Nginx反向代理配置,仅供参考。
server { server_name bitwarden.uptoz.cn; listen 443 ssl; listen [::]:443 ssl; http2 on; ssl_certificate /home/nginx/.acme.sh/*.uptoz.cn/fullchain.cer; ssl_certificate_key /home/nginx/.acme.sh/*.uptoz.cn/*.uptoz.cn.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; listen 80; listen [::]:80; if ($scheme = http) { return 301 https://$host:443$request_uri; } location / { proxy_pass http://127.0.0.1:1180; 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-Host $http_host; proxy_set_header X-Forwarded-Port $server_port; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Methods *; add_header Access-Control-Allow-Headers *; add_header Access-Control-Allow-Credentials true; if ($request_method = 'OPTIONS') { return 204; } proxy_redirect http:// https://; if ($host != $server_name) { return 404; } } }
使用
请参照官方文档 bitwarden Doc(https://bitwarden.com/help/create-bitwarden-account/)
- 感谢你赐予我前进的力量