Всем привет, снова я
В этот раз беда следующая, пункт 4.8 документации "КриптоПро УЦ, Руководство по установке" (Astra Linux 1.7.5 SE)
Необходимо:Создание TLS сертификата Web сервера NGINX.
Фактический результат:Не удалось установить сертификат
Открытые ключи в сертификате и контейнере не совпадают
Требуемый сертификат не существует.
[ErrorCode: 0x8010002c]
Флоу по которому прошел:
1. /opt/cprocsp/bin/amd64/cryptcp -creatrqst -provtype 80 -rdn 'CN=Astra' -certusage 1.3.6.1.5.5.7.3.1 -cont '\\.\HDIMAGE\nginx1' -ex /var/tmp/nginx.reqСоздаю запрос через утилиту cryptcp, использую шаблон 1.3.6.1.5.5.7.3.1 (Проверка подлинности сервера) указанный в
дополнительном гайде. Контейнер обзываю так исходя из того же гайда. Экспортирую в папку с заранее выданными правами 777.
2. /opt/cprocsp/bin/amd64/cryptcp -sign -thumbprint d46eb247056cf53eeab2dfaba7f88e70f51a68d4 -der /var/tmp/nginx.req /var/tmp/nginx.cerИспользую ту же утилиту cryptcp для подписания, подписываю сертификатом "stan", являющимся клиентским TLS сертификатом (опять же по оф. гайду), указываю путь до запроса и путь экспорта в ту же папку с правами 777.
3. /opt/cprocsp/bin/amd64/certmgr -install -store uMy -cont '\\.\HDIMAGE\nginx1' -file /var/tmp/nginx.cer Устанавливаю утилитой certmgr в личное хранилище (т.к. планирую запускать все процессы и службы через учетку astra, созданную в момент установки самой ОС).
Получаю такой результат:Certmgr Ver:5.0.13000 OS:Linux CPU:AMD64 (c) "КРИПТО-ПРО", 2007-2024.
Программа для работы с сертификатами, CRL и хранилищами.
Идёт установка:
=============================================================================
1-------
Издатель : C=RU, CN=CryptoPro
Субъект : C=RU, CN=stan
Серийный номер : 0x2FD41D5DE008B8B140B3DDF801920017
SHA1 отпечаток : d46eb247056cf53eeab2dfaba7f88e70f51a68d4
Идентификатор ключа : 7eed10c78443d3044e1ff4356b8ab4d8425ba3a2
Алгоритм подписи : ГОСТ Р 34.11-2012/34.10-2012 256 бит
Алгоритм откр. кл. : ГОСТ Р 34.10-2012 256 бит (512 бит)
Выдан : 17/09/2024 12:56:57 UTC
Истекает : 17/12/2025 13:06:57 UTC
Ссылка на ключ : Нет
Назначение/EKU : 1.3.6.1.5.5.7.3.2 Проверка подлинности клиента
=============================================================================
Не удалось установить сертификат
Открытые ключи в сертификате и контейнере не совпадают
Требуемый сертификат не существует.
[ErrorCode: 0x8010002c]
Уже заметил и сделал выводы, что:
а) Отличается назначение, по гайду требуется 1.3.6.1.5.5.7.3.1, а получаем 1.3.6.1.5.5.7.3.2. Я так понял, что это связанно с самим шаблоном по которому выпущен "stan", но если подписать с отпечатком TLS сервера который имеет нужный шаблон, результат не меняется.
б) Изменился субъект, как будто запрос переформировался не на NGINX TLS Web-сервер, а на самого "stan".
Натолкните на правильный путь пожалуйста, вообще не одупляю что делать.
Конфигурация:
1. NATS TLS (общая конфигурация на одну УЗ (только stan, перенес на его сертификат все требования от ca,ra и т.д.))
2. CA TLS
3. RA TLS
4. PostgreSQL базы cpcadb - для CA, radb - для RA.
Все базы функционируют корректно, экземпляры ЦА и ЦР создались успешно. Авторизация происходит через переменную Password в конфиге, не использую .pgpass