签名证书和错误之间的混淆:-x509:未知授权机构签名的证书

问题描述 投票:0回答:2

所以我正在研究matrix.org突触家庭服务器,并试图建立联盟。

我获得了家庭服务器的证书。它里面有3个文件chain.crt(二进制),server.crt(非二进制)和server.key(非二进制)。

server.crt具有开始证书,而server.key具有私钥。我正在用Nginx Web服务器反向代理我的家庭服务器,在Nginx的配置中,我已将SSl证书指向server.crt,并将SSl密钥指向server.key。

我在https://federationtester.matrix.org/中遇到的问题是它显示x509:未知授权机构签名的证书。

我是否还需要在某些位置包含chain.crt(二进制文件)?

ssl openssl ssl-certificate pem matrix-synapse
2个回答
1
投票

通常,在TLS配置中包括中间证书是一种很好的做法。但是该证书通常无论如何都应正确验证,因为clienta通常在其存储中还具有各种中间证书,并且可以以这种方式构建链。

您的证书是否由公共CA签署?由于有多个版本,Synapse要求提供此类证书。默认证书可能是自签名的,除非您配置了内置ACME客户端以检索一个密码,让我们进行加密。

检查它的一种方法是在浏览器中打开联盟URL,然后查看它是否引发验证错误。


0
投票

[nginx]要服务器(叶)证书链(中级)证书,都采用PEM格式(您称其为非二进制)in the same file,但您几乎称呼二进制是多少软件调用DER(这是X.509使用的ASN.1的特定二进制编码)。如果您有可用的OpenSSL(或获取它),请使用

openssl x509 -in chain.binary -inform der -out chain.pem

然后将chain.pem附加到server.crt的末尾;或者您可以通过[]一步完成此操作

openssl x509 -in chain.binary -inform der >>server.crt

如果您没有/没有OpenSSL,则可以根据环境使用其他工具。指定您的操作系统以及所有现有的主要工具,例如Java。

© www.soinside.com 2019 - 2024. All rights reserved.