2.2. 创建根证书颁发机构证书。

CA.pl -newcert 
(openssl req -config /etc/openssl.cnf -new -x509 -keyout newreq.pem \
-out newreq.pem -days 365) 

创建自签名证书(用于证书颁发机构)。生成的文件将放入 newreq.pem。对于通用名称 (CN),请使用类似“ACME 根证书”的名称。此文件需要拆分为 2 个文件 cacert.pem 和 private/cakey.pem。“-RSA PRIVATE KEY-”部分放入 private/cakey.pem,而“-CERTIFICATE-”部分放入 cacert.pem。完成后删除 newreq.pem。

现在确保文件 index.txt 为空,并且文件 serial 包含 01。

您可能需要增加天数,以便当根证书过期时,您的根证书和由此根证书签名的所有证书不必更改。我认为专业的公司为其根证书使用 5 年到 10 年的有效期。

openssl req -config /etc/openssl.cnf -new -x509 -keyout private/cakey.pem \
-out cacert.pem -days 3650

最后一个命令比“CA.pl -newcert”更好,因为它会将文件放置在所需的位置并创建一个有效期为 10 年的根 CA。

现在确保此自签名根证书仅用于签名其他证书。私钥非常敏感,永远不要泄露它,方法是不要移除保护它的密码。有些人会将私钥放在软盘上,并且仅在签名其他证书时才加载它。如果您的计算机被黑客入侵,他们无法物理获取私钥,如果它在软盘上。

现在您有了一个根证书颁发机构。其他人需要信任您的自签名根 CA 证书,因此需要下载它并在他们的浏览器上注册它。

每次您想用它签名另一个证书时,您都必须输入密码。