Vaultwarden Wiki 中文版
⮐ Vaultwarden Wiki个人主页联系我
  • 关于
  • 首页
  • FAQ
    • 1.FAQ
    • 2.审计
    • 3.支持上游的发展
    • 故障排除
      • 1.日志记录
      • 2.Bitwarden Android 故障排除
  • 容器镜像的使用
    • 1.容器镜像的选择
    • 2.启动容器
    • 3.使用 Docker Compose
    • 4.使用 Podman
    • 5.更新 Vaultwarden 镜像
  • 代理
    • 1.代理示例
    • 2.使用备用基本目录(子目录/子路径)
    • HTTPS
      • 1.启用 HTTPS
      • 2.使用 Let's Encrypt 证书运行私有 Vaultwarden 实例
  • 配置
    • 1.配置概述
    • 2.启用管理页面
    • 3.SMTP 配置
    • 4.禁用新用户注册
    • 5.禁用邀请
    • 6.启用 WebSocket 通知
    • 7.启用移动客户端推送通知
    • 8.其他配置
    • 数据库
      • 1.使用 MariaDB (MySQL) 后端
      • 2.使用 PostgreSQL 后端
      • 3.在未启用 WAL 的情况下运行
      • 4.从 MariaDB (MySQL) 迁移到 SQLite
    • 安全
      • 1.强化指南
      • 2.显示密码提示
      • 3.启用 U2F 和 FIDO2 WebAuthn 身份验证
      • 4.启用 YubiKey OTP 身份验证
      • 5.Fail2ban 设置
      • 6.Docker Traefik ModSecurity 设置
    • 性能
      • 1.更改 API 请求大小限制
      • 2.更改 worker 数量
  • 自定义
    • 1.翻译电子邮件模板
    • 2.翻译管理页面
    • 3.自定义 Vaultwarden CSS
    • 4.禁用或覆盖密码库接口托管
  • 备份
    • 1.通用(非 docker)
    • 2.备份您的密码库
  • 部署
    • 1.构建二进制
    • 2.构建您自己的 Docker 镜像
    • 3.Git hooks
    • 4.与上游 API 实现的区别
  • 替代部署
    • 1.预构建二进制
    • 2.设置为 systemd 服务
    • 3.第三方包
    • 4.部署示例
    • 5.禁用管理令牌
  • 其他
    • 1.从 Keepass 或 KeepassX 导入数据
    • 2.更改持久性数据位置
    • 3.从 LDAP 同步用户
    • 4.使用 Cloudflare DNS 的 Caddy 2.x
    • 5.转储示例
    • *使用非 root 用户运行 docker 容器
    • *使私有 CA 和自签名证书兼容 Chrome
    • *测试 SSO
    • *使用 systemd docker 运行
由 GitBook 提供支持
在本页
  1. 其他

*使私有 CA 和自签名证书兼容 Chrome

对应的官方页面地址

⚠️ 💩 ⚠️此方法仅用于测试和开发。绝大多数用户不应该使用这种方法,因为它需要在您的每台设备上加载证书,这既容易出错,又需要后期的维护。相反,应把精力集中在通过 Let's Encrypt 获取的真实证书上。如果您的 Vaultwarden 实例不处于公共互联网中,此方法甚至也可以工作(示例)。⚠️ 💩 ⚠️

☠️ ☠️ ☠️ 此方法不受支持。请不要开启 GitHub 话题,也不要在讨论区发帖询问如何让这个方法能正常工作。☠️ ☠️ ☠️


为了使 Vaultwarden 能够正常地使用自签名证书,Chrome 要求该证书在证书的备用名称字段中包含域名。

创建 CA 密钥(您自己的小型本地证书颁发机构):

openssl genpkey -algorithm RSA -aes128 -out private-ca.key -outform PEM -pkeyopt rsa_keygen_bits:2048

您也可以使用较旧的 -des3 来代替 -aes128。

创建 CA 证书:

openssl req -x509 -new -nodes -sha256 -days 3650 -key private-ca.key -out self-signed-ca-cert.crt

-nodes 参数用于阻止在测试/安全环境中为私钥(密钥对)设置密码短语,否则每次启动/重启服务器时都必须输入密码短语。

创建一个 Vaultwarden 密钥:

openssl genpkey -algorithm RSA -out vaultwarden.key -outform PEM -pkeyopt rsa_keygen_bits:2048

创建 Vaultwarden 证书请求文件:

openssl req -new -key vaultwarden.key -out vaultwarden.csr

使用以下内容创建文本文件 vaultwarden.ext,请将域名更改为您设置的域名:

authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:TRUE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names

[alt_names]
DNS.1 = vaultwarden.local
DNS.2 = www.vaultwarden.local
# 如果不使用 DNS 名称,也可选择添加 IP
IP.1 = 192.168.1.3

创建从根 CA 签名的 Vaultwarden 证书:

openssl x509 -req -in vaultwarden.csr -CA self-signed-ca-cert.crt -CAkey private-ca.key -CAcreateserial -out vaultwarden.crt -days 365 -sha256 -extfile vaultwarden.ext

注意:自 2019 年 4 月起,iOS 13+ 和 macOS 15+ 的服务器证书的有效期不能大于 825 天,并且必须包含 ExtendedKeyUsage (EKU) 扩展。详见 https://support.apple.com/zh-cn/HT210176。

注意:从 Android 11 开始,basicConstraints 值必须设置为 CA:TRUE 才能通过 「设置」 应用程序导入。

将根证书和 Vaultwarden 证书添加到客户端计算机。

更多参考,请参阅这里:https://deliciousbrains.com/ssl-certificate-authority-for-local-https-development/。

上一页*使用非 root 用户运行 docker 容器下一页*测试 SSO

最后更新于2个月前