我找到了这篇文章,这是我用来生成 CA 证书的内容:
openssl genrsa -des3 -out myCA.key 2048
openssl req -x509 -new -nodes -key myCA.key -sha256 -days 1825 -out myCA.pem
我将其命名为“MyCert”
我用它来签署为本地主机生成的证书(它是 ChatGPT 的输出)
$ openssl req -newkey rsa:2048 -nodes -keyout localhost.key -out localhost.csr
$ openssl x509 -req -in localhost.csr -CA myCA.pem -CAkey myCA.key -CAcreateserial -out localhost.crt -days 365 -sha256
我已将 CA 证书添加到系统中(我使用 Fedora):
sudo cp myCA.pem /etc/pki/ca-trust/source/anchors/
sudo update-ca-trust extract
我重新启动了服务器,当访问时https://localhost
得到这个错误:
NET::ERR_CERT_COMMON_NAME_INVALID
Subject: localhost
Issuer: MyCert
我做错了什么?我使用 CA 证书的默认字段:
CN = MyCert
O = Default Company Ltd
L = Default City
C = pl
本地主机证书具有这些字段:
CN = localhost
C = pl
如何在 Fedora 上正确创建 CA 证书并为 Apache 签署证书?