Bitwarden是一款开源的密码管理器,旨在帮助用户安全地存储和管理他们的密码和敏感信息。无论是个人用户还是企业,Bitwarden都提供了便捷的解决方案来保护您的登录凭据和重要数据。
Bitwarden提供了跨平台的支持,可在多个设备上使用,包括桌面、移动设备和网络浏览器。您可以在Windows、Mac、Linux、iOS和Android等操作系统上安装Bitwarden客户端,以便随时随地访问您的密码和数据。
Vaultwarden是Bitwarden的开源版,下面将演示如何快速搭建Vaultwarden。
安装 Docker 与 Docker compose
curl -fsSL https://get.docker.com | bash -s docker
启用移动客户端推送通知(安卓和iOS)
从Vaultwarden 1.29.0版本开始,可以启用移动客户端的推送通知,在移动应用程序、网页扩展程序和网页密码库之间自动同步您的个人密码库,而无需手动同步。
访问 https://bitwarden.com/host/,输入您的电子邮件地址,数据地区选择美国,然后您将获得一个INSTALLATION ID和KEY。
快速搭建Vaultwarden
创建 /opt/vaultwarden
文件夹,并在文件夹中创建 docker-compose.yml
文件,写入内容并保存:
services:
vaultwarden:
container_name: vaultwarden
image: vaultwarden/server:latest
restart: unless-stopped
volumes:
- ./data/:/data/
ports:
- 8080:80
environment:
- DOMAIN=https://example.com # 这是您希望与您的Vaultwarden实例关联的域名。
- LOGIN_RATELIMIT_MAX_BURST=10 # 允许在一阵登录/两步验证尝试中的最大请求次数。
- LOGIN_RATELIMIT_SECONDS=60 # 这是来自同一IP的登录请求之间的平均秒数,在Vaultwarden限制登录次数之前。
- ADMIN_RATELIMIT_MAX_BURST=10 # 这与LOGIN_RATELIMIT_MAX_BURST相同,只争对admin面板。
- ADMIN_RATELIMIT_SECONDS=60 # 这与LOGIN_RATELIMIT_SECONDS相同
- ADMIN_SESSION_LIFETIME=20 # 会话持续时间
- ADMIN_TOKEN=YourReallyStrongAdminTokenHere # 此值是Vaultwarden管理员面板的令牌(一种密码)。为了安全起见,这应该是一个长的随机字符串。如果未设置此值,则管理员面板将被禁用。建议openssl rand -base64 48 生成ADMIN_TOKEN确保安全
- SENDS_ALLOWED=true # 此设置决定是否允许用户创建Bitwarden发送 - 一种凭证共享形式。
- EMERGENCY_ACCESS_ALLOWED=true # 此设置控制用户是否可以启用紧急访问其账户的权限。例如,这样做可以在用户去世后,配偶可以访问密码库以获取账户凭证。可能的值:true / false。
- WEB_VAULT_ENABLED=false # 此设置决定了网络保险库是否可访问。一旦您配置了您的账户和客户端,停止您的容器,然后将此值切换为false并重启Vaultwarden,可以用来防止未授权访问。可能的值:true/false。
- SIGNUPS_ALLOWED=true # 此设置控制新用户是否可以在没有邀请的情况下注册账户。可能的值:true / false。
- PUSH_ENABLED=true
- PUSH_INSTALLATION_ID=获得的id
- PUSH_INSTALLATION_KEY=获得的key
简单说一下:8080:80
这里8080可以改成你需要的非443、80端口DOMAIN
改成最后你要用的域名ADMIN_TOKEN
可以在ssh里面输入 openssl rand -base64 48
生成复杂的密码SIGNUPS_ALLOWED
等你注册好之后,如果你只是想自己用,可以把这边改成false
接着保存,执行 docker compose up -d
启动,如果打开IP:8080
可以正常访问vaultwarden,那么是没问题的。
反向代理
这里使用nginx反向代理前端,当然你也可以使用Nginx Proxy Manager。
下面是nginx反代配置:
#PROXY-START/
location / {
proxy_pass http://127.0.0.1:8080/; # 注意改成你实际使用的端口
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade-Insecure-Requests 1;
proxy_set_header X-Forwarded-Proto https;
#Set Nginx Cache
add_header Cache-Control no-cache;
}
#PROXY-END/
也可以使用cloudflare直接反代:首先解析域名到服务器地址,并点亮代理的小云朵,然后CF网站左侧的 规则
– Origin Rules
中创建规则并保存。
Vaultwarden 更新
cd /opt/vaultwarden
docker-compose pull
docker-compose up -d
Vaultwarden 备份和迁移
备份 /opt/vaultwarden
文件夹,并迁移到新的服务器,启动docker即可。
原创文章,作者:inli,如若转载,请注明出处:https://inli.app/set-up-vaultwarden-bitwarden.html