我有一个来自斯福自由的SSL证书。我有ca-bundle,certificate和它的private密钥。
我想为不同的子域创建我自己的证书。我希望我能以某种方式用我现有的证书来签署这个证书,它将通过浏览器和邮件客户端以及其他客户端所做的所有ssl检查。
我完成了几十个教程,但要么我错过了一个重要的细微之处,要么那些教程不是我想要的。
有人能帮我吗?我怎样才能用openssl签署CentOS 7的新证书?
发布于 2019-07-11 19:46:32
从技术上讲,您可以这样做,但是没有人会信任这些证书。您的SSL证书*不允许*签署其他证书。
如果您查看您的证书,您可能会发现一个Basic Constraints证书扩展,它告诉主题类型: end实体或CA。isCA位将被设置为0,这意味着证书持有人是end实体。证书验证代码将严格检查此字段,如果发现end entity证书用于签署其他证书,它们将自动被拒绝。参考:RFC 5280§4.2.1.9
发布于 2019-07-11 19:49:38
使用类似于这个openssl x509 -text -in filename的命令查看您的证书。看到CA:假吗?这是一个标志,表示证书不能用作CA,也不能用于签署从属证书。
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
...
Signature Algorithm: sha256WithRSAEncryption
Issuer: C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
Validity
Not Before: Jul 8 22:26:53 2019 GMT
Not After : Oct 6 22:26:53 2019 GMT
...
X509v3 extensions:
X509v3 Key Usage: critical
Digital Signature, Key Encipherment
X509v3 Extended Key Usage:
TLS Web Server Authentication, TLS Web Client Authentication
X509v3 Basic Constraints: critical
CA:FALSE没有来自受信任根的CA将为您提供一个启用了的证书。如果他们这么做了,你就可以在世界上任何一个人。
我想为不同的子域创建我自己的证书。
就让我们用加密吧。您可以为域获得您想要的所有免费证书,您可以通过DNS或HTTP挑战验证这些证书。您可以使用正式客户端或第三方客户端。有许多易于使用的客户端用于Letsencrypt。
https://serverfault.com/questions/974892
复制相似问题