我已经基于 Debian 10 系统建立了自己的证书颁发机构,并且可以成功签署证书。但是当我使用命令执行此操作时openssl ca -in /root/ca/certreqs/domain.tld.csr -out /root/ca/certs/domain.tld.crt
,我得到的证书文件既包含普通文本,又包含 PEM 编码部分。
该文件的内容开头为:
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
9b:fa:25:0d:[...]
Signature Algorithm: sha256WithRSAEncryption
[...]
然后在最后有编码部分(这是我希望在这个文件中唯一的东西):
-----BEGIN CERTIFICATE-----
MIIE8TCCAtmgAwIBAgIRAJv6JQ0bTvBobRSX52Jl+AQwDQYJKoZIhvcNAQELBQAw
QjELMAkGA1UEBhMCREUxFzAVBgNVBAoMDkJlbm5ldCBSaWNodGVyMRowGAYDVQQD
[...]
-----END CERTIFICATE-----
我该怎么做才能让这个文件中只有 PEM 编码的部分,而无需手动删除上部(例如使用 sed: sed -ni '/BEGIN CERTIFICATE/,$p' /root/ca/certs/domain.tld.crt
)?我认为这一定有一个参数,但我什么也找不到。
答案1
为了仅显示证书本身,我仅执行以下操作:
openssl x509 -in /root/ca/certs/domain.tld.crt