Этот урок покажет вам, как вручную создать Запрос на подпись сертификата (или CSR) в среде веб-хостинга Apache или Nginx с использованием OpenSSL. Нажмите здесь для обучения по заказу сертификатов, или здесь для получения дополнительной информации о том, как установить новый сертификат SSL.com.
Чтобы получить дополнительные полезные инструкции и последние новости кибербезопасности, подпишитесь на информационный бюллетень SSL.com здесь:
Видео
OpenSSL - очень полезный набор инструментов командной строки с открытым исходным кодом для работы с X.509 сертификаты, запросы на подпись сертификатов (CSRs) и криптографические ключи. Если вы используете вариант UNIX, такой как Linux или macOS, OpenSSL, вероятно, уже установлен на вашем компьютере. Если вы хотите использовать OpenSSL в Windows, вы можете включить Подсистема Linux в Windows 10 или установить Cygwin.
В этих инструкциях мы собираемся использовать OpenSSL req
утилита для генерации как закрытого ключа, так и CSR в одной команде. Генерация секретного ключа таким способом гарантирует, что вам будет предложено ввести пароль для защиты закрытого ключа. Во всех приведенных примерах команд замените имена файлов, показанные в ALL CAPS, на фактические пути и имена файлов, которые вы хотите использовать. (Например, вы можете заменить PRIVATEKEY.key
/private/etc/apache2/server.key
в среде MacOS Apache.) Это практическое руководство охватывает генерацию обоих RSA и ECDSA ключи.
RSA
Приведенная ниже команда OpenSSL сгенерирует 2048-битный закрытый ключ RSA и CSR:
openssl req -newkey rsa: 2048 -keyout PRIVATEKEY.key -out МОЙCSR.csr
Давайте разберем команду:
openssl
это команда для запуска OpenSSL.req
это утилита OpenSSL для создания CSR.-newkey rsa:2048
сообщает OpenSSL создать новый 2048-битный закрытый ключ RSA. Если вы предпочитаете ключ 4096 бит, вы можете изменить это число на4096
.-keyout PRIVATEKEY.key
указывает, где сохранить файл закрытого ключа.-out MYCSR.csr
указывает, где сохранить CSR .- С этими двумя последними элементами не забудьте использовать свои собственные пути и имена файлов для закрытого ключа и CSR, а не заполнители.
После ввода команды нажмите вводить, Вам будет представлен ряд подсказок:
- Сначала создайте и подтвердите парольную фразу. Запомните эту парольную фразу, потому что она понадобится вам снова для доступа к вашему секретному ключу.
- Теперь вам будет предложено ввести информацию, которая будет включена в ваш CSR, Эта информация также известна как Отличное имяили DN, Распространенное имя поле обязательно для SSL.com при отправке вашего CSR, но остальные не являются обязательными. Если вы хотите пропустить дополнительный элемент, просто введите вводить когда это появится:
- Ассоциация Имя страны (необязательно) занимает две буквы код страны.
- Ассоциация Название населенного пункта Поле (необязательно) предназначено для вашего города.
- Ассоциация Название организации поле (необязательно) предназначено для названия вашей компании или организации.
- Ассоциация Распространенное имя поле (обязательное) используется для Полное доменное имя (FQDN) сайта этот сертификат будет защищать.
- Ваш e-mail (опционально)
- Ассоциация Пароль для вызова поле является необязательным и может быть пропущено.
По завершении этого процесса вы вернетесь в командную строку. Вы не получите никакого уведомления о том, что ваш CSR был успешно создан.
ECDSA
Чтобы создать закрытый ключ ECDSA с вашим CSR, вам необходимо вызвать вторую утилиту OpenSSL, чтобы сгенерировать параметры для ключа ECDSA.
Эта команда OpenSSL сгенерирует файл параметров для 256-битного ключа ECDSA:
openssl genpkey -genparam -algorithm ec -pkeyopt ec_paramgen_curve: P-256 -out ECPARAM.pem
openssl genpkey
запускает утилиту openssl для генерации закрытого ключа.-genparam
генерирует файл параметров вместо закрытого ключа. Вы также можете сгенерировать закрытый ключ, но используя файл параметров при генерации ключа и CSR гарантирует, что вам будет предложено ввести пароль.-algorithm ec
определяет алгоритм эллиптической кривой.-pkeyopt ec_paramgen_curve:P-256
выбирает 256-битную кривую. Если вы предпочитаете 384-битную кривую, измените часть после двоеточия наP-384
.-out ECPARAM.pem
предоставляет путь и имя файла для файла параметров.
Теперь укажите ваш файл параметров при создании CSR:
openssl req -newkey ec: ECPARAM.pem -keyout PRIVATEKEY.key -out МОЙCSR.csr
Команда такая же, как мы использовали в примере RSA выше, но -newkey RSA:2048
был заменен на -newkey ec:ECPARAM.pem
, Как и прежде, вам будет предложено ввести пароль и информацию о различающемся имени для CSR.
При желании вы можете использовать перенаправление для объединения двух команд OpenSSL в одну строку, пропуская создание файла параметров, как показано ниже:
openssl req -newkey ec: <(openssl genpkey -genparam -algorithm ec -pkeyopt ec_paramgen_curve: P-256) -keyout PRIVATEKEY.key -out MYCSR.csr
Следующая Шаги
Для получения дополнительной информации об установке сертификата см. здесь, для привязки к IIS 10, читать здесь.