创建 CSR 时,由于 conf 可以获取国家和州信息,我假设它将嵌入到证书中。如果有,证书签名后如何显示?我尝试了“$ openssl x509 -in foo.crt -noout -text”,但似乎信息不存在。我还检查了“-help”。还有其他方式打印吗?非常感谢。
更多发现:签署 CSR 后,国家和州信息似乎被删除,对吗?
例如,这是我观察到的。
$ openssl req -text -noout -in server.csr
Certificate Request:
Data:
Version: 0 (0x0)
Subject: Subject: DC=..., DC=..., C=..., ST=..., L=..., O=..., OU=..., CN=...
...
$ openssl x509 -text -noout -in server.crt
Certificate:
Data:
Version: 3 (0x2)
Serial Number: 1 (0x1)
Signature Algorithm: sha1WithRSAEncryption
Issuer: DC=..., DC=..., O=..., OU=..., CN=...
Validity
Not Before: Dec 5 22:05:21 2013 GMT
Not After : Dec 5 22:05:21 2015 GMT
Subject: DC=..., DC=..., O=..., OU=..., CN=...
如图所示,证书中缺少主题中的“C”、“ST”和“L”字段。
最佳答案
您将使用您已经使用的相同命令(如果您只关心主题信息,您可以使用openssl x509 -subject -noout -in server.crt
,替换-text
与 -subject
)。您的情况的问题在于,正如您所指出的,城市和州信息已被签名者删除。将哪些信息放入证书中最终是颁发者的特权。
关于SSL证书: How to display country and state information?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20432959/