Теперь у меня есть следующие файлы:
Пара ключей CA (RSA 4096):
ca.pem
, ca-key.pem
Пара ключей сертификата (ECC 384) ):
server.csr
, server-key.pem
Как я могу выдать сертификат сервера «server.pem»?
Цепочка сертификатов должна выглядеть так:
Пример CA
example.com
openssl x509
подпишет сертификат за вас:
openssl x509 -req -set_serial 1234 -in server.csr -CA ca.pem -CAkey ca-key.pem -out server.pem
Однако очень маловероятно, что он выдаст именно то, что вы ожидаете. Прочтите страницу руководства для получения всех подробностей. Например, вы можете захотеть добавить к сертификату определенные расширения, такие как SAN. В таких случаях вам необходимо создать файл, содержащий расширение, как показано ниже:
[ san_ext ]
subjectAltName = @alt_names
[alt_names]
DNS.1 = www.example.com
DNS.2 = example.com
Сохраните его (например, как san.cnf
). Наконец, сообщите OpenSSL об этом с помощью параметров -extfile
и -extensions
:
openssl x509 -req -set_serial 1234 -ext file san.cnf -extensions san_ext -in server.csr -CA ca.pem -CAkey ca-key.pem -out server.pem