1. 拉取镜像

vaultwarden/server

vaultwarden

2. 配置容器

  1. 点击映像,运行vaultwarden/server
    点击映像,运行
  2. 端口号映射301280端口(如果配置失败报端口已占用,那么还需要修改配置中的ROCEKT_PORT即web端口)
  3. 存储主要是映射/data目录,自己也映射了/config,目前貌似没用
  4. 可选环境配置
    -e WEBSOCKET_ENABLED=true:启用WebSocket支持;
    -e SIGNUPS_ALLOWED=false:禁止用户自行注册新账户;
    -e WEB_VAULT_ENABLED=true: 启用web支持
    -e DOMAIN=https://vault.moutai.com.cn:设置Vaultwarden的域名;可以不用
    -e ADMIN_TOKEN=eMEt*W4ay7:设置管理员令牌(密码)不设置进不了管理员界面;
    -e DATABASE_URL=mysql://username:password@10.0.11.22:3306/vault:指定MySQL数据库的连接URL;
    引用
  5. 网络改为host
    port
    port

3. 启动

配置完成启动就可以了

4. https协议处理

我们还不能使用,因为需要https协议, https需要在自己的域名添加证书,而且内网的防火墙转发会失效(比如我的openwrt)

  • 证书: 我的因为是阿里云的域名,就直接用的阿里云的免费证书了,有三个月,过期了重新申请
    阿里云免费证书申请配置
  • 转发:我自己用的nginx做转发,通过监听子域名和端口的方式实现转发到vaultwarden
    • 先下载证书(从域名申请那里得到,我的是在阿里云上的,可以下载nginx格式的,方便)到Nginx服务器对应的位置(自己记住路径即可)
      cret

    • 然后配置nginx.conf

      nginx配置https代理

      阿里云nginx配置

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      server {
      listen 66 ssl; # 监听的端口,可以访问443的话就用443把,我的家庭宽带不支持

      server_name <你自己的域名>;

      access_log /etc/nginx/logs/passwoed.access.log openwrt;
      error_log /etc/nginx/logs/password.error.log error;

      ssl_certificate /etc/nginx/cert/lqingyu.com.pem; # 阿里下载的证书 pem
      ssl_certificate_key /etc/nginx/cert/lqingyu.com.key; #阿里下载的证书 key

      ssl_session_cache shared:SSL:1m;
      ssl_session_timeout 5m;

      ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
      ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;

      ssl_prefer_server_ciphers on;

      location / {
      proxy_http_version 1.1;
      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_pass http://<你的内网IP>:3080; # vaultwarden 地址

      }
      }
    • 配置完成后校验配置文件nginx -t然后重启nginix -s

5. 使用

浏览器插件

浏览器安装bitwarden插件
bitwarden

点击图标,选择自托管

index

输入服务器地址(https地址)

index2

回到界面然后登录或注册就可以了

index3

引用

官网文档

安卓使用

如果是从阿里等安装的可信证书,则直接下载客户端bitwarden即可
如果是不可信证书,则需要安装证书及根证书,建议使用KeyManager管理证书,方便