*使私有 CA 和自签名证书兼容 Chrome
对应的官方页面地址
⚠️ 💩 ⚠️此方法仅用于测试和开发。绝大多数用户不应该使用这种方法,因为它需要在您的每台设备上加载证书,这既容易出错,又需要后期的维护。相反,应把精力集中在通过 Let's Encrypt 获取的真实证书上。如果您的 Vaultwarden 实例不处于公共互联网中,此方法甚至也可以工作(示例)。⚠️ 💩 ⚠️
☠️ ☠️ ☠️ 此方法不受支持。请不要开启 GitHub 话题,也不要在讨论区发帖询问如何让这个方法能正常工作。☠️ ☠️ ☠️
为了使 Vaultwarden 能够正常地使用自签名证书,Chrome 要求该证书在证书的备用名称字段中包含域名。
创建 CA 密钥(您自己的小型本地证书颁发机构):
您也可以使用较旧的
-des3
来代替-aes128
。
创建 CA 证书:
-nodes
参数用于阻止在测试/安全环境中为私钥(密钥对)设置密码短语,否则每次启动/重启服务器时都必须输入密码短语。
创建一个 Vaultwarden 密钥:
创建 Vaultwarden 证书请求文件:
使用以下内容创建文本文件 vaultwarden.ext
,请将域名更改为您设置的域名:
创建从根 CA 签名的 Vaultwarden 证书:
注意:自 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/。
最后更新于