事情起因
一年前在网上看见Docker版的Bitwarden挺好用的,所以就安装在自己的黑群晖上了,为了安全Bitwarden需要使用SSL加密,防止被监听、拦截。当时是用freessl的免费ssl,但是只有一年有效期且不能延期(只能更换域名再申请一年,不想换域名)。结果一年到期后就会出现一些稀奇古怪的问题,经过搜索初步判断为SSL过期,无法使用https造成的,知道原因就想办法解决。
EDGE浏览器插件错误提示“Failed to fetch”
安卓App错误提示“exception message chain validation faile”
解决办法(群晖部分)
因为是免费域名,所以通过DNS验证是个问题,点名表扬https://dynv6.com/还给多种Records权限。
1、在阿里云上申请ssl
SSL 证书(应用安全)-SSL 证书-免费证书-创建证书。
2、验证域名
将阿里云给的“主机记录”和“记录值”写入dynv6里,Records-Add Record-Type TXT里的“Name”和“Content”
3、下载证书
根据需要下载相应类型,我的黑群晖是用“Nginx”,下载解压后得到.key和.pem文件。
4、上传证书
DSM-控制面板-安全性-证书-新增-添加新证书-描述写上域名(勾选“设为默认证书”)-
5、配置证书
全部选择新增的证书
重中之重(Bitwarden 配置)
1、从DSM导出证书
DSM-控制面板-安全性-证书-导出证书,得到cert.pem和privkey.pem
2、上传证书
上传到Docker配置文件夹,这里以dockerbitwardenrsssl为例
3、修改Docker中的配置
DSM-Docker-容器-Bitwardenrs-编辑-环境-ROCKET_TLS,修改成
{certs=“/ssl/cert.pem”,key=“/ssl/privkey.pem”}
总结
其实更新SSL分为两部分,一部分是申请证书、更新到DSM当中,大家一般都知道;第二部分是更新Docker的SSL文件夹,时间长了大家可能不记得了,我就是因为这个花了2天时间才解决。算是自己的一个记录,防止明年更新的时候又忘了,希望能帮到大家。
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~