注意

Unofficial Bitwarden compatible server written in Rust, formerly known as bitwarden_rs
bitwarden_rs改名为vaultwarden,教程部分已于2021/06/20更新

介绍[GitHub][1]

这是用Rust编写的Bitwarden服务器API实现,与Bitwarden客户端兼容,非常适合自托管部署。bitwarden_rs是第三方开发的Bitwarden安装镜像。为了降低了对机器配置的要求,使用的 Docker 镜像体积很小,部署非常方便。
特征
基本上提供了Bitwarden API的完整实现,包括:单用户功能,组织支持,附件,保管箱API支持,为Vault界面提供静态文件,网站图标API,身份验证器和U2F支持,YubiKey和Duo支持等

安装前准备

①vps一台(至少512M内存),需要安装nginx,docker。建议使用大厂vps,例如阿里云,Azure等(安全稳定性考虑)。
②一个二级域名和ssl证书(必须)。建议使用付费的域名,毕竟密码比较重要,一旦确定要自建密码管理系统就要保证可以长期使用。

卸载Docker

##Centos
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
##Debian/Ubuntu
sudo apt-get remove docker docker-engine docker.io containerd runc

安装Docker CE (社区版)

curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

拉取bitwarden_rs(vaultwarden)镜像

docker pull vaultwarden/server:latest

bitwarden_rs配置方法

#启用命令相关的解释如下:
docker run -d --name bitwarden \  <==docker名称(可自定义)
  -e SIGNUPS_ALLOWED=true \    <==允许注册
  -e WEBSOCKET_ENABLED=true \   <==启用WebSocket notifications
  -e LOG_FILE=/data/bitwarden.log \    <==启用日志记录
  -p 11111:80 \      <==容器端口:80,服务端口:11111(11111可自定义)
  -v /www/wwwroot/example.com/:/data/ \     <==服务器目录:/www/wwwroot/example.com(自定义),容器目录:/data
  vaultwarden/server:latest  <==镜像

命令行

#一条命令运行
docker run -d --name bitwarden -v /www/wwwroot/example.com/:/data/ -p 11111:80 vaultwarden/server:latest

配置nginx反代即可使用(使用面板即可)

5.png
6.png
7.png
重启Nginx,输入网址地址,即可访问bitwarden。
8.png

最后的配置以及一些注意和可选项目

禁止注册(为了安全考虑,务必开启)SIGNUPS_ALLOWED=false

#停止项目
docker stop bitwarden
#重新设置后启动项目
docker run -d --name bitwarden \
  -e SIGNUPS_ALLOWED=false \  
  -v  /www/wwwroot/example.com/:/data/ \
  -p 11111:80 \
  vaultwarden/server:latest

升级项目

# Pull the latest version
docker pull vaultwarden/server:latest
# Stop and remove the old container
docker stop bitwarden
docker rm bitwarden
# Start new container with the data mounted
docker run -d --name bitwarden -e SIGNUPS_ALLOWED=false -v /www/wwwroot/example.com/:/data/ -p 11111:80 vaultwarden/server:latest

配置Docker Compose管理项目Docs(可选)

使用Docker Compose配置可以方便你管理Docker,不用也可以。 在bitwarden目录创建docker-compose.yml文件。

#安装
sudo curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
#检测是否安装成功
docker-compose --version
docker-compose version 1.26.2, build 1110ad01   <==有输出则表示成功

在docker-compose.yml写入一下配置,参考官方Wiki

version: "3"
services:
  bitwarden:
    image: vaultwarden/server:latest
    container_name: bitwarden
    restart: always
    ports:
        - "127.0.0.1:11111:80"
    volumes:
      - /www/wwwroot/example.com:/data
    environment:
      SIGNUPS_ALLOWED: "true" #开启注册,自己注册后改成fale
      WEB_VAULT_ENABLED: "true" #web客户端
docker-compose up -d #运行服务
docker-compose down #关闭服务
docker-compose restart #重启服务

bitwarden备份与恢复

直接备份bitwarden的根目录即可,也就是网站目录,例如本案例中/www/wwwroot/example.com。恢复时直接替换目录中文件即可。

最后修改:2024 年 03 月 31 日
如果觉得我的文章对你有用,请随意赞赏