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

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

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

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

Описание

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

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

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

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

drwsign

Каталог Сервера Dr.Web bin

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

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

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

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

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

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

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

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

drwcsd.pub

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

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

Ключи -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=<срок_действия>] [<самоподписанный_сертификат>]

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

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

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

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

drwcsd.pri

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

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

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

3560

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

drwcsd-certificate.pem

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

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

Может быть использовано для подписания сертификата другого сервера, например, для подписания сертификата Прокси-сервера Dr.Web ключом Сервера 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=<сертификат_Сервера_Dr.Web>] [‑cert=<сертификат_на_подпись>] [‑days=<срок_действия>] [‑eku=<предназначение>] [<подписанный_сертификат>]

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

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

Возможны следующие значения ключа ‑eku (расширение Extended Key Usage):

drwebServerAuth — аутентификация Сервера/Прокси-сервера Агентом,

drwebMeshDAuth — аутентификация Сканирующего сервера Виртуальным агентом.

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

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

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

drwcsd.pri

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

drwcsd-ca-cerificate.pem

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

drwcsd-certificate.pem

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

3560

<предназначение>

drwebServerAuth

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

drwcsd-signed-certificate.pem

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

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

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

Возможны следующие значения ключа -eku (расширение Extended Key Usage):

drwebServerAuth — аутентификация Сервера/Прокси-сервера Агентом,

drwebMeshDAuth — аутентификация Сканирующего сервера Виртуальным агентом.

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

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

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

drwcsd.pri

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

drwcsd-cerificate.pem

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

drwcsd-certificate-sign-request.pem

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

3560

<предназначение>

drwebServerAuth

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

drwcsd-signed-certificate.pem

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

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

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

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

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

<TLS-тикет>

tickets-key.bin

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

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

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

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

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

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

drwcsd-certificate.pem

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

drwcsd-signed-certificate.pem

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

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

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

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

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

drwcsd-certificate.pem

drwsign version

Вывести информацию о версии утилиты.