Клиентская часть
Создание сертификата
Чтобы создать клиентский сертификат, выполните следующие шаги:
-
Создайте приватный ключ для клиентского корневого сертификата командой:
openssl genrsa -out clientRootCAKey.key 2048
Храните этот ключ в надежном месте! -
Создайте клиентский корневой сертификат. В представленном примере сертификат действует 20000 дней:
openssl req -x509 -new -nodes -key serverRootCAKey.key -days 20000 -out /opt/rubackup/keys/rootCA/clientRootCACert.crt
-
В интерактивном меню введите двухбуквенный
код страны
,провинцию
,город
,организацию
,подразделение
,Common Name
иe-mail адрес
. -
Создайте приватный ключ клиента:
openssl genrsa -out /opt/rubackup/keys/client/clientKey.key 2048
-
Создайте запрос на подпись:
openssl req -new -key /opt/rubackup/keys/client/clientKey.key -out /opt/rubackup/keys/client/clientCert.csr
-
В интерактивном меню впишите ответ на те же вопросы, что и при создании корневого сертификата. Введенный
Common Name
должен отличаться отCommon Name
у корневого сертификата. -
Создайте клиентский сертификат и подписать его клиентским корневым сертификатом. В представленном примере сертификат действует 20000 дней:
openssl x509 -req -in /opt/rubackup/keys/client/clientCert.csr -CA /opt/rubackup/keys/rootCA/clientRootCACert.crt -CAkey clientRootCAKey.key -CAcreateserial -out /opt/rubackup/keys/client/clientCert.crt -days 20000
Подготовка сертификатов для клиента
Чтобы подготовить сертификаты для клиента, выполните следующие шаги:
-
Разместите в отдельной папке промежуточные сертификаты и корневой сертификат.
-
Если некоторые из промежуточных или корневой сертификат имеют расширение
.cer
или.pem
, конвертируйте их в формат.crt
с помощью одной из следующих команд:openssl x509 -in '<имя сертификата>.pem' -out '<имя сертификата>.crt' -outform DER openssl x509 -inform PEM -in '<имя сертификата>.cer' -out '<имя сертификата>.crt'
-
Объедините промежуточные сертификаты и корневой сертификат в единый корневой клиентский сертификат:
cat <путь к промежуточному сертификату 1> <путь к промежуточному сертификату 2> <путь к корневому сертификату> /opt/rubackup/keys/rootCA/clientRootCACert.crt
Проверка созданных ключей и сертификатов
openssl verify -no-CApath -CAfile /opt/rubackup/keys/rootCA/clientRootCACert.crt /opt/rubackup/keys/client/clientCert.crt
Вывод команды должен содержать: ОК.