Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.3.0_dsm7_beta,DSM 7.0 测试版的中间证书相关问题(群晖版本:DSM 7.0-41890) #100

Open
570748428 opened this issue Apr 19, 2023 · 2 comments

Comments

@570748428
Copy link

问题1
部分客户端应用通过https访问WebDAV报错

问题详情:
使用SSL证书在线检测工具(https://csr.chinassl.net/ssl-checker.html)检测WebDAV Server端口(5006)报错:缺少中级证书Intermediate,请安装中级证书否则证书在部分浏览器中不受信任(此问题会导致Windows软件joplin无法访问webdav,其他软件如RaiDrive、安卓的ES文件浏览器没有问题)

问题原因:
syno-acme申请Let's Encrypt证书会生成4个文件(cert.pem、fullchain.pem、privkey.pem、chain.pem),在复制给群晖使用时没有复制chain.pem,而群晖貌似更认可chain.pem而不是fullchain.pem(在群晖的控制面板>安全性>证书页面手动导入证书时,中间证书选择fullchain.pem会报错,选择chain.pem则通过。不过群晖的门户网站5006端口、CardDAV套件的8443端口貌似兼容了fullchain.pem,所有并没有报错,而WebDAV也只有部分软件报错)。

解决方式:
crt_cp.py脚本的10行,把:
CERT_FILES = [
'cert.pem',
'privkey.pem',
'fullchain.pem'
]
改为:
CERT_FILES = [
'cert.pem',
'privkey.pem',
'chain.pem',
'fullchain.pem'
]

相关情况说明:
cert.pem是证书
chain.pem是证书链编码
fullchain.pem是cert.pem和chain.pem的证书集合
privkey.pem是私钥文件

@lim0513
Copy link

lim0513 commented Apr 28, 2023

我记得群晖的中间证书好像是可选的,可以不导入吧。。。

@570748428
Copy link
Author

我记得群晖的中间证书好像是可选的,可以不导入吧。。。

群晖的中间证书可以不导入,但是有的应用需要验证中间证书,有的应用没有中间证书也能过。所以我这里也是有的软件报错,有的软件可以正常使用。

我表达的重点是:fullchain.pem包含chain.pem的全部信息,群晖兼容一下fullchain.pem会更好。或者至少内部统一一下,现在看到的情况是,导入证书页面、WebDAV组件不兼容fullchain.pem;门户网站5006端口、CardDAV套件的8443端口兼容了fullchain.pem,这样会给排查问题增加迷惑性。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants