要读懂此文章,你需要了解对称加密、非对称加密的基本概念,并了解证书签发的基本流程。
很容易理解,CA 也有自己的公钥和私钥。
openssl genrsa -des3 -out CAPrivate.key 2048
这个命令会生成一个私钥 CAPrivate.key,并且必须要填写私钥的密码。可以将 2048 改成 4096。不要奇怪这里只有一个私钥,其实公钥也保存在这个文件里了。
openssl req -x509 -new -nodes -key CAPrivate.key -sha256 -days 365 -out CAPrivate.pem
根证书,顾名思义,肯定是自签发的。这个证书待会需要安装到你的终端设备里面,不然靠这个根证书签发的其他证书不会被信任。
这个命令里面需要填写很多信息,按照实际填写就好。
至此,作为一个简单的 CA,所有的文件都已经齐全了。
这个私钥与 CA 无关,是待签发的下一级证书。这一步和下一步可以在另一台机器上完成,然后把文件传给保存 CA 信息的机器就好。
openssl genrsa -out MyPrivate.key 2048
同样,可以把 2048 改成 4096。
可以理解为一个待发送给 CA、为你签发证书的一个请求。
openssl req -new -key MyPrivate.key -out MyRequest.csr
同样,这里需要填写很多信息,需要注意的是 Common Name 这个项目,如果你的证书是给 https 用的,这里就填你的域名。
openssl x509 -req -in MyRequest.csr -CA CAPrivate.pem -CAkey CAPrivate.key -CAcreateserial -out X509Certificate.crt -days 365 -sha256