{{/* Установка ключа Валидаты: загрузка архива НРД → носитель → справочник → проверка ИШ. Один и тот же блок — на шаге «Ключ подписи» мастера и на отдельной странице /admin/setup/keywizard (данные — keyWizardData). */}} {{define "keyWizRet"}}{{if .InWizard}}{{end}}{{if .WantContour}}{{end}}{{end}} {{define "keyWizBody"}} {{$s := .State}} {{/* ===== Датчик случайных чисел Валидаты: один раз для сервера, до первой работы с ключом (validatarng.go) ===== */}} {{if not $s.Done}} {{end}}
{{/* ===== Лента шагов — когда путь выбран (флешка с ключом или новая флешка из архива) ===== */}} {{if or $s.StagingID $s.Done}} {{if $s.Done}}
Как прошла установка — {{len $s.Steps}} этапов{{end}}
    {{range $i, $step := $s.Steps}}
  1. {{if eq $step.Status "ok"}}✓{{else if eq $step.Status "error"}}{{else}}{{add $i 1}}{{end}}
    {{$step.Title}}
    {{if $step.Detail}}
    {{$step.Detail}}
    {{end}}
  2. {{end}}
{{if $s.Done}}
{{end}} {{/* ===== Действие в зависимости от состояния ===== */}} {{end}} {{if $s.Done}}
Ключ подключён и подписывает

{{if $s.MediaDevice}}Флешка с ключом подключена к шлюзу НРД как есть — на неё ничего не записывалось.{{else}}Ключ записан на флешку, справочник сертификатов сформирован, шлюз НРД подписывает им документы.{{end}} Флешка должна оставаться в сервере: без неё шлюз не запустится.

{{if $s.Backup}}

Копия прежнего содержимого флешки: {{$s.Backup}}

{{end}}
{{if devOn}}
{{else if not .InWizard}}→ Вернуться в мастер настройки Проверить подключения{{end}}
{{template "keyWizRet" .}}
{{else if and $s.StagingID $s.MediaDevice}} {{/* ключ с подготовленной флешки — используется как есть, на флешку ничего не пишется */}}

Шаг 2 — использовать ключ с флешки

На флешке уже подготовленный ключ: {{fallbackTpl $s.VDK "—"}}{{if $s.MediaProfile}}, профиль {{$s.MediaProfile}}{{end}}. bj подключит его к шлюзу НРД как есть: на флешку ничего не записывается — справочник для ИШ собирается на диске сервера, флешка подключается только для чтения.

{{template "keyWizRet" .}}
{{$c := .SuggestContour}}{{if not $c}}{{$c = .WantContour}}{{end}}{{if not $c}}{{$c = currentContour}}{{end}} {{if .SuggestIssuer}}

Сертификат от «{{.SuggestIssuer}}» — это {{if eq .SuggestContour "test3"}}тестовый{{else}}боевой{{end}} контур.

{{end}}
{{template "keyWizRet" .}}
{{else if $s.StagingID}} {{/* Архив загружен — выбор флешки + запись */}}

Шаг 2 — вставьте новую флешку и запишите ключ

Архив распакован. Ключ: {{fallbackTpl $s.VDK "—"}}. Вставьте в сервер чистую флешку — на неё запишется ключ и справочник сертификатов, затем bj подключит её к шлюзу и перезапустит ИШ. Копия прежнего содержимого флешки сохраняется на сервере. Не используйте флешку с рабочим ключом другого сервера.

{{if not .Drives}}

Флешка не найдена — вставьте её в сервер и обновите страницу.

{{else}}
{{template "keyWizRet" .}}
{{if .Drives}} {{range $i, $d := .Drives}} {{end}} {{end}}
{{$c := .SuggestContour}}{{if not $c}}{{$c = .WantContour}}{{end}}{{if not $c}}{{$c = currentContour}}{{end}} {{if .SuggestIssuer}}

В архиве сертификат от «{{.SuggestIssuer}}» — это {{if eq .SuggestContour "test3"}}тестовый{{else}}боевой{{end}} ключ.

{{end}} У тестового и боевого контуров разные ключи: ключ подключается только к каналу ИШ своего контура.
Пусто = имя берётся из архива автоматически.
{{end}}
{{template "keyWizRet" .}}
{{else}} {{/* Начало: где ключ — на подготовленной флешке или в архиве НРД (тогда — на новую флешку) */}}

Где ваш ключ?

Что должно быть на флешке
  • Ключ Валидаты — файл *.vdk (обязательно; без него флешку не примет).
  • Справочник сертификатов — папка spr<номер> (например spr1046) с файлами local.gdbm и local.pse (обязательно).
  • Необязательно: файлы отзыва *.crl; из архива НРД также key.reg и папка vdkeys/ — их наличие не требуется.

Раскладка любая: как в архиве НРД (key.reg + spr<N>/ + vdkeys/*.vdk) или в любой папке — bj сам находит *.vdk и spr<N>/local.gdbm. Флешка FAT32/exFAT/NTFS или ext, подключается только на чтение.

{{if .Drives}}
{{template "keyWizRet" .}}

Флешка с ключом:

{{range $i, $d := .Drives}} {{end}}
{{else}}

Флешка не найдена. Вставьте флешку с ключом в сервер и нажмите «Перепроверить флешку».

Если сервер — виртуальная машина (VMware/ESXi/Hyper-V), USB-носитель нужно сначала пробросить в гостя (в настройках ВМ подключить USB-устройство). Без проброса флешка в сервере не появляется.

{{end}}
{{end}}
{{end}}