Avanpost FAM/MFA+ : 4.2.6 Настройка Signer для Avanpost FAM Server

Signer - утилита в составе основного серверного компонента Avanpost FAM Server, предназначенная для централизованной подписи сообщений, отправляемых FAM Server, и проверки подписей сообщений, получаемых FAM Server.

Утилита устанавливается на машине с Avanpost FAM Server и лицензией КриптоПро CSP, позволяя отказаться от отдельной установки утилиты КриптоПро CSP на каждый экземпляр Avanpost FAM Server. Для упрощенных конфигураций Avanpost FAM, состоящих из одного экземпляра Avanpost FAM Server, утилита Signer является встроенной. Утилита Signer поставляется в архиве Avanpost FAM Server

Signer представляет собой отдельный gRPC-сервис, работающий со следующими процедурами:

  • Sign –  Подпись сообщения;
  • Verify – Проверка подписи сообщения.

Утилита Signer используется для подписи/проверки сообщения, отправляемых посредством механизмов:

  • Avanpost FAM;
  • ЕСИА.

    Технологический портал ЕСИА доступен по ссылке.

    Сертификаты ЕСИА доступны по ссылке

Поддерживаются следующие реализации компонента КриптоПро CSP для работы с CMS (Cryptographic Message Syntax): 

  • dummy (возвращает всегда одну и туже подпись и верифицирует любую подпись);
  • cprocsp_cms (Крипто ПРО, требует certPath, sha1Thumbprint и containerPIN);
  • cprocsp_raw (Крипто ПРО, требует certPath, containerName и containerPIN).

Список крипто-провайдеров может быть расширен посредством добавления новых реализаций при помощи интерфейса `signer.cryptoProvider`.

Настройка конфигурационного файла Signer

Перед началом работы утилиты Signer на машине, где установлена лицензионная утилита КриптоПро CSP, следует корректно настроить конфигурационный файл config.signer.sample.toml (расположен в директории /signer):

ПараметрОписание

[grpc]

host

Хост Avanpost FAM Server, к которому будет осуществляться подключение.

port

Порт Avanpost FAM Server, к которому будет осуществляться подключение.

network

Тип сети.

useTls

Флаг, указывающий, следует ли использовать TLS для защищенного соединения.

certPath

Путь к сертификату, необходимому для установки TLS-соединения.

keyPath

Путь к файлу закрытого ключа для установки TLS-соединения.

[cproCsp]

binDir

Директория, в которой расположены программные компоненты КриптоПро CSP.

Пример конфигурационного файла config.signer.sample.toml:

[grpc]
host = 'localhost'
port = 9017
network = 'tcp'
useTls = false
certPath = '/cert.pem'
keyPath = '/key.pem'

[cproCsp]
binDir = '/opt/cryptoPro/bin'

Настройка конфигурационного файла Avanpost FAM Server

Для корректной работы утилиты Signer требуется осуществить дополнительную настройку конфигурационного файла Avanpost FAM Server config.toml в соответствии со следующими параметрами:

ПараметрОписание

host

Хост, на котором развернут Signer.

port

Порт, на котором развернут Signer.

useTls

Флаг, указывающий, следует ли использовать TLS для защищенного соединения.

caCertPath

Путь к сертификату удостоверяющего центра, необходимому для установки TLS-соединения.

Пример настройки конфигурационного файла:

json
"signer": {
    "host": "0.0.0.0",
    "port": 9017,
    "useTls": true,
    "caCertPath": "путь к сертификату/develop-ca-cert.pem"
},

Управление сертификатами

Для управления сертификатами следует пользоваться нижеприведенными командами.

Пример команды генерации сертификата электронной подписи (ЭП) с помощью КриптоПро CSP:

/opt/cprocsp/bin/amd64/cryptcp -createcert -provtype 80 -hashalg 1.2.643.7.1.1.2.2 -rdn 'CN=esiacert' -exprt -cont '\\.\HDIMAGE\esiacert'

Команда просмотр списка сертификатов в хранилище сертификатов КриптоПро CSP:

/opt/cprocsp/bin/amd64/certmgr -list

Пример команды экспорта сертификата из хранилища сертификатов КриптоПро CSP:

/opt/cprocsp/bin/amd64/certmgr -export -dest devcert.cer -thumbprint db9de1fb52bec8336c534f7edaa53156059e2050

Обсуждение