自签名证书中的通用名称如何工作?

问题描述

我必须在 CRC OpenShift 集群(192.168.130.11 是 CodeReady Containers 虚拟机的 IP)上创建一个带有 https 访问权限的保险库。

所以我来这里是为了对自签名证书中的 CN 有一些精确性。

为了创建证书,我使用了以下命令:

openssl genrsa 2048 > ca-key.pem
openssl req -new -x509 -nodes -days 365000 -key ca-key.pem -out ca.pem
openssl req -newkey rsa:2048 -days 365000 -nodes -keyout server-key.pem -out server-req.pem
openssl rsa -in server-key.pem -out server-key.pem
openssl x509 -req -in server-req.pem -days 365000  -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

对于这个命令:

openssl req -new -x509 -nodes -days 365000 -key ca-key.pem -out ca.pem

一些信息是必要的:

Country Name (2 letter code) [AU]:XX
State or Province Name (full name) [Some-State]:XXX
Locality Name (eg,city) []:XXX
Organization Name (eg,company) [Internet Widgits Pty Ltd]:XXX
Organizational Unit Name (eg,section) []:XXX
Common Name (e.g. server FQDN or YOUR name) []:foo1

对于下一个命令:

openssl req -newkey rsa:2048 -days 365000 -nodes -keyout server-key.pem -out server-req.pem

我必须输入相同的信息。但是在这个命令和上一个命令之间,如果我把相同的CN我会出错。

那么你能告诉我在这种情况下 CN 之间有什么区别吗?

我必须在第一个 CN 和第二个 CN 中放入哪些信息?

非常感谢!

解决方法

在第一个命令中,您将生成CA 证书,在第二个命令中,您将使用您之前创建的 CA 生成一个服务器证书

它们不能具有相同的通用名称,因为 CA 应该与服务器不同。