Клиентская часть

Создание сертификата

Чтобы создать клиентский сертификат, выполните следующие шаги:

  1. Создайте приватный ключ для клиентского корневого сертификата командой:

    openssl genrsa -out clientRootCAKey.key 2048
    Храните этот ключ в надежном месте!
  2. Создайте клиентский корневой сертификат. В представленном примере сертификат действует 20000 дней:

    openssl req -x509 -new -nodes -key serverRootCAKey.key -days 20000 -out /opt/rubackup/keys/rootCA/clientRootCACert.crt
  3. В интерактивном меню введите двухбуквенный код страны, провинцию, город, организацию, подразделение, Common Name и e-mail адрес.

  4. Создайте приватный ключ клиента:

    openssl genrsa -out /opt/rubackup/keys/client/clientKey.key 2048
  5. Создайте запрос на подпись:

    openssl req -new -key /opt/rubackup/keys/client/clientKey.key -out /opt/rubackup/keys/client/clientCert.csr
  6. В интерактивном меню впишите ответ на те же вопросы, что и при создании корневого сертификата. Введенный Common Name должен отличаться от Common Name у корневого сертификата.

  7. Создайте клиентский сертификат и подписать его клиентским корневым сертификатом. В представленном примере сертификат действует 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

Подготовка сертификатов для клиента

Чтобы подготовить сертификаты для клиента, выполните следующие шаги:
  1. Разместите в отдельной папке промежуточные сертификаты и корневой сертификат.

  2. Если некоторые из промежуточных или корневой сертификат имеют расширение .cer или .pem, конвертируйте их в формат .crt с помощью одной из следующих команд:

    openssl x509 -in '<имя сертификата>.pem' -out '<имя сертификата>.crt' -outform DER
    
    openssl x509 -inform PEM -in '<имя сертификата>.cer' -out '<имя сертификата>.crt'
  3. Объедините промежуточные сертификаты и корневой сертификат в единый корневой клиентский сертификат:

    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

Вывод команды должен содержать: ОК.