H9.1. Утилита генерации цифровых ключей и сертификатов

Предоставляются следующие версии консольной утилиты для генерации цифровых ключей и сертификатов:

Исполняемый файл

Расположение

Описание

drweb-sign-<ОС>-<разрядность>

Центр управления, раздел Администрирование → Утилиты

Независимая версия утилиты. Может запускаться из произвольного каталога и на любом компьютере с соответствующей операционной системой.

Каталог Сервера webmin/utilities

drwsign

Каталог Сервера bin

Версия утилиты зависит от наличия серверных библиотек. Может запускаться только из каталога своего расположения.

Версии утилиты drweb-sign-<ОС>-<разрядность> и drwsign аналогичны по функциональности. Далее в разделе приводится версия drwsign, однако все примеры актуальны для обеих версий.

Формат команды запуска

drwsign check [-public-key=<открытый_ключ>] <файл>

Проверить подпись указанного файла, используя открытый ключ субъекта, подписавшего данный файл.

Параметр ключа

Значение по умолчанию

<открытый_ключ>

drwcsd.pub

drwsign extract [-private-key=<закрытый_ключ>] [-cert=<сертификат_Сервера>] <открытый_ключ>

Извлечь открытый ключ из файла закрытого ключа или из файла сертификата и записать открытый ключ в указанный файл.

Ключи -private-key и -cert взаимоисключающие, т.е. может быть задан только один из них; в случае задания обоих ключей одновременно команда завершится с ошибкой.

Указания параметра для ключей обязательно.

Если ни один ключ не задан, то будет использован -private-key=drwcsd.pri для извлечения открытого ключа из закрытого ключа drwcsd.pri.

Параметр ключа

Значение по умолчанию

<закрытый_ключ>

drwcsd.pri

drwsign genkey [<закрытый_ключ> [<открытый_ключ>]]

Сгенерировать пару открытый – закрытый ключ и записать их в соответствующие файлы.

Параметр ключа

Значение по умолчанию

<закрытый_ключ>

drwcsd.pri

<открытый_ключ>

drwcsd.pub

Версия утилиты для платформ Windows (в отличие от версии для ОС UNIX) никак не защищает закрытый ключ от копирования.

drwsign gencert [-private-key=<закрытый_ключ>] [-subj=<поля_субъекта>] [-days=<срок_действия>] [<самоподписанный_сертификат>]

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

Параметр ключа

Значение по умолчанию

<закрытый_ключ>

drwcsd.pri

<поля_субъекта>

/CN=<имя_хоста>

<срок_действия>

3560

<самоподписанный_сертификат>

drwcsd-certificate.pem

drwsign gencsr [-private-key=<закрытый_ключ>] [-subj=<поля_субъекта>] [<запрос_на_подпись_сертификата>]

Сгенерировать запрос на подпись сертификата на основе закрытого ключа и записать этот запрос в соответствующий файл.

Может быть использовано для подписания сертификата другого сервера, например, для подписания сертификата Прокси-сервера ключом Сервера Dr.Web.

Для подписания подобного запроса используйте ключ signcsr.

Параметр ключа

Значение по умолчанию

<закрытый_ключ>

drwcsd.pri

<поля_субъекта>

/CN=<имя_хоста>

<запрос_на_подпись_сертификата>

drwcsd-certificate-sign-request.pem

drwsign genselfsign [-show] [-subj=<поля_субъекта>] [-days=<срок_действия>] [<закрытый_ключ> [<самоподписанный_сертификат>]]

Сгенерировать самоподписанный RSA-сертификат и закрытый RSA-ключ для веб-сервера и записать их в соответствующие файлы.

Ключ -show выводит содержимое сертификата в читаемом виде.

Параметр ключа

Значение по умолчанию

<поля_субъекта>

/CN=<имя_хоста>

<срок_действия>

3560

<закрытый_ключ>

private-key.pem

<самоподписанный_сертификат>

certificate.pem

drwsign hash-check [-public-key=<открытый_ключ>] <файл_хэша> <файл_подписи>

Проверить подпись указанного 256-битного числа в формате клиент-серверного протокола.

В параметре <файл_хэша> задается файл с 256-битным числом, которое необходимо подписать. В файле <файл_подписи> – результат подписи (два 256-битных числа).

Параметр ключа

Значение по умолчанию

<открытый_ключ>

drwcsd.pub

drwsign hash-sign [-private-key=<закрытый_ключ>] <файл_хэша> <файл_подписи>

Подписать указанное 256-битное число в формате клиент-серверного протокола.

В параметре <файл_хэша> задается файл с 256-битным числом, которое необходимо подписать. В файле <файл_подписи> – результат подписи (два 256-битных числа).

Параметр ключа

Значение по умолчанию

<закрытый_ключ>

drwcsd.pri

drwsign help [<команда>]

Вывести краткую справку о программе или конкретной команде в формате командной строки.

drwsign sign [-private-key=<закрытый_ключ>] <файл>

Подписать <файл>, используя закрытый ключ.

Параметр ключа

Значение по умолчанию

<закрытый_ключ>

drwcsd.pri

drwsign signcert [-ca-key=<закрытый_ключ>] [-ca-cert=<сертификат_Сервера>] [-cert=<сертификат_на_подпись>] [-days=<срок_действия>] [<подписанный_сертификат>]

Подписать готовый <сертификат_на_подпись> закрытым ключом и сертификатом Сервера. Подписанный сертификат сохраняется в отдельном файле.

Может быть использовано для подписывания сертификата Прокси-сервера Серверным ключом.

Параметр ключа

Значение по умолчанию

<закрытый_ключ>

drwcsd.pri

<сертификат_Сервера>

drwcsd-ca-cerificate.pem

<сертификат_на_подпись>

drwcsd-certificate.pem

<срок_действия>

3560

<подписанный_сертификат>

drwcsd-signed-certificate.pem

drwsign signcsr [-ca-key=<закрытый_ключ>] [-ca-cert=<сертификат_Сервера>] [-csr=<запрос_на_подпись_сертификата>] [-days=<срок_действия>] [<подписанный_сертификат>]

Подписать <запрос_на_подпись_сертификата>, сгенерированный при помощи команды gencsr, закрытым ключом и сертификатом Сервера. Подписанный сертификат сохраняется в отдельный файл.

Может быть использовано для подписания сертификата другого сервера, например, для подписания сертификата Прокси-сервера ключом Сервера Dr.Web.

Параметр ключа

Значение по умолчанию

<закрытый_ключ>

drwcsd.pri

<сертификат_Сервера>

drwcsd-cerificate.pem

<запрос_на_подпись_сертификата>

drwcsd-certificate-sign-request.pem

<срок_действия>

3560

<подписанный_сертификат>

drwcsd-signed-certificate.pem

drwsign tlsticketkey [<TLS-тикет>]

Сгенерировать TLS-тикеты.

Может быть использовано в кластере Серверов для общих TLS-сессий.

Параметр ключа

Значение по умолчанию

<TLS-тикет>

tickets-key.bin

drwsign verify [-ss-cert] [-CAfile=<сертификат_Сервера>] [<сертификат_на_проверку>]

Проверить валидность сертификата по доверенному сертификату Сервера.

Ключ -ss-cert предписывает игнорировать доверенный сертификат и только проверить корректность самоподписанного сертификата.

Параметр ключа

Значение по умолчанию

<сертификат_Сервера>

drwcsd-certificate.pem

<сертификат_на_проверку>

drwcsd-signed-certificate.pem

drwsign x509dump [<сертификат_на_печать>]

Распечатать дамп любого x509 сертификата.

Параметр ключа

Значение по умолчанию

<сертификат_на_печать>

drwcsd-certificate.pem