当前位置:首页 > CN2资讯 > 正文内容

docker安装Bitwarden如何反向代理 docker搭建bitwarden

3天前CN2资讯

因为bitwarden的氪金玩家才能使用双因子认证,恰好手上有个vps,搭建个bitwarden服务端来使用2fa ## 自建bitwarden vps比较垃圾,所以选用一个资源开销比较小的

因为bitwarden的氪金玩家才能使用双因子认证,恰好手上有个vps,搭建个bitwarden服务端来使用2fa

自建bitwarden

vps比较垃圾,所以选用一个资源开销比较小的服务端比较有必要,我这里选择的是 https:///mprasil/bitwarden_rs

这里采用 docker-compose 进行部署

version: '3' services: bitwarden: image: bitwardenrs/server:latest container_name: bitwarden restart: unless-stopped volumes: - ./bw-data:/data environment: - WEBSOCKET_ENABLED=true - SIGNUPS_ALLOWED=true - WEB_VAULT_ENABLED=true - ADMIN_TOKEN=xxxxxxxxxxxxxxxxxxxx ports: - "127.0.0.1:8889:80" - "127.0.0.1:8810:3012"

其中的3012是websocket通知端口

  • WEBSOCKET_ENABLED 代表启用 websocket
  • SIGNUPS_ALLOWED 代表是否启用注册
  • WEB_VAULT_ENABLED 代表是否启用web界面
  • ADMIN_TOKEN 是管理界面的密码,用来启用管理界面,启用后可通过 [https://你的域名/admin](https://你的域名/admin) 进行访问

然后我们需要创建一个反向代理,这里我使用的是 nginx,下面给出 nginx 配置

upstream bitwarden-default { server 127.0.0.1:8889; } upstream bitwarden-ws { server 127.0.0.1:8810; } server { listen 80; listen [::]:80; server_name bitwarden.example.tld; client_max_body_size 128M; # reverse proxy location / { 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-Proto $scheme; proxy_pass http://bitwarden-default; } location /notifications/hub/negotiate { 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-Proto $scheme; proxy_pass http://bitwarden-default; } location /notifications/hub { proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $http_connection; proxy_set_header X-Real-IP $remote_addr; proxy_pass http://bitwarden-ws; } }

你现在可以访问域名看看界面了

当然,现在还只是http,http协议下bitwarden是不允许进行一些密码操作的,你可以配置证书接入ssl,或者使用cloudflare接入ssl

注册完自己的用户后建议修改上面的 SIGNUPS_ALLOWED 然后重启docker关闭注册。

然后你可以使用bitwarden的客户端了

创建挂载目录备份数据

密码数据最好备份一下,要是哪天vps坏了就gg了

bitwarden_rs的数据库是sqlite3,直接打包压缩备份,然后同步到坚果云

坚果云配置webdav

首先我们在坚果云后端创建一个备份应用,点击进入 账户信息 - 安全选项

然后点击下面的添加应用,随便填写一个名字,然后复制生成的应用密码

然后在坚果云根目录下创建一个目录名为 bitwarden_backup 作为我们后续的同步文件夹

服务器挂载webdav

首先安装rclone,为什么使用rclone而不是davfs2,主要是因为davfs2不支持 vfs 缓存(将直接从远程读取并直接写入远程),对于后续的同步会有比较大的问题(主要是同步程序对于文件的操作)

curl https://rclone.org/ | sudo bash

挂载需要使用fuse,所以需要安装一下

apt install fuse

然后使用 rclone config 配置webdav

然后创建目录进行挂载

mkdir /mnt/rclone_bitwarden_backup #挂载 #rclone mount <网盘名称:网盘路径> <本地路径> [参数] --daemon #取消挂载 #fusermount -qzu <本地路径> rclone mount jianguoyun:/bitwarden_backup /mnt/rclone_bitwarden_backup --allow-non-empty --daemon --vfs-cache-mode full --log-file /var/log/rclone_bitwarden_backup.lo

上面的是手动挂载,如果你希望开机自动挂载可以查看 Rclone 使用教程 - 挂载 OneDrive、Google Drive 等网盘(Linux)

监听文件变化进行同步

其实也可以直接将上面的 docker-compose 挂载目录设置到webdav的挂载目录上去,但是icon_cache这个目录下很多文件,调用webdav次数过多会触发坚果云风控,如果不在意的话也可以采取该方案

我这里采用 inotify 进行监控同步的方案

首先安装 rsync和inotifywait

apt install -y rsync inotify-tools

然后监控文件变更,同步到webdav的挂载目录

inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w %f %e' -e modify,create,delete,move /root/bitwarden_rs/bw-data | while read -r event; do rsync -aHv --exclude icon_cache /root/bitwarden_rs/bw-data/ /mnt/rclone_bitwarden_backup/; done

注意该命令最好使用tmux之类的程序来启动,因为需要跑在后台

后记

发现监听变化就同步,坚果云的上传流量用得太猛了,所以还是采用了crontab定时同步的方案

    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/19328.html

    分享给朋友:

    “docker安装Bitwarden如何反向代理 docker搭建bitwarden” 的相关文章

    如何轻松修改99元服务器地域,提升网站性能与稳定性

    如何轻松修改99元服务器地域,提升网站性能与稳定性

    阿里云近期推出的99元服务器确实让人眼前一亮。这款ECS经济型e实例配置为2核2G、3M固定带宽、40G系统盘,性价比极高。对于中小型网站建设、开发测试以及轻量级应用场景来说,这台服务器完全能够胜任。它的性能参数ecs.e-c1m1.large也让人感到放心,尤其是在网络带宽、多队列和云盘IOPS方...

    Hostodo无法打开的解决方案与常见原因分析

    Hostodo概览 Hostodo于2014年在美国成立,定位为大众市场的VPS主机商。它的使命是提供高性价比的虚拟专用服务器,让更多用户能够享受到可靠的网络服务。随着云计算的普及,越来越多的小企业和个人用户需要更灵活的主机解决方案,Hostodo正是为了满足这种需求而诞生的。 在市场上,Hosto...

    什么是VPS?探索虚拟专用服务器的独立性与灵活性

    在现代互联网环境中,VPS(虚拟专用服务器)是许多人所关注的一个话题。它通过虚拟化技术,将一台物理服务器切割成多个独立的虚拟服务器。每个VPS都能独立运行自己的操作系统,拥有专属的内存、磁盘空间和带宽。这种设计让VPS在很多方面都表现得尤为出色,适合各种需求。 简单来说,VPS就像在一台大房子里有多...

    选择最佳印度尼西亚 VPS 服务商的终极指南

    在了解印度尼西亚的虚拟专用服务器(VPS)之前,我们先来讲讲VPS的基本概念。简单来说,VPS是一种将一台物理服务器划分为多个虚拟服务器的技术。每个虚拟服务器都有独立的操作系统、资源和配置,让用户可以像使用独立服务器一样,获得更高的灵活性和控制权。这种方式不但能满足各种规模的业务需求,还能显著降低成...

    Virtono:高性价比的虚拟主机与云服务器解决方案

    在这个信息化迅猛发展的时代,虚拟主机与服务器服务需求越来越高。而提到这个领域,其中有一家备受注目的公司,那就是Virtono。成立于2014年的Virtono,凭借其卓越的产品与服务迅速在全球市场上崭露头角。对于我来说,Virtono的故事不仅仅代表着一家公司,更是一段不断创新与发展的旅程。 Vir...

    奈飞检测脚本:保障账号安全的有效解决方案

    在了解奈飞检测脚本之前,先从它的定义说起。简单来说,奈飞检测脚本是一种用于自动化检测奈飞账户状态的程序。通过这类脚本,用户能够快速确认自己的奈飞账号是否存在被盗、被共享或其他潜在的安全问题。这样一来,用户可以及时采取措施,保护自己的账户安全。 接下来,聊聊奈飞检测脚本的工作原理。这些脚本通常通过模拟...