Перейти к содержанию

Защита закрытых ГОСТ-ключей и жизненный цикл

ГОСТ-ключ предназначен для ограниченного набора криптографических операций. Главная задача администратора — не только получить правильный PEM или PFX, но и обеспечить секретность закрытой части, контролируемый доступ, замену и восстановление.

Создание каталога

umask 077
install -d -m 0700 "$HOME/secure-gost"
openssl genpkey -algorithm gost2012_256 \
  -pkeyopt paramset:TCA -out "$HOME/secure-gost/service.key"
chmod 600 "$HOME/secure-gost/service.key"
stat -c '%a %U:%G %n' "$HOME/secure-gost/service.key"

Не размещайте закрытые ключи внутри корневого каталога веб-сайта, Git, публичных образов контейнеров или читаемых всеми каталогов.

Пользователь отдельной службы

Для системной службы можно выделить закрытый каталог с владельцем службы. Системный пользователь, путь установки и правила SELinux подбираются под приложение. Проверьте, может ли служба читать ключ, и что она не имеет избыточного доступа к другим ключам.

namei -l /etc/myapp/keys/server.key
stat -c '%a %U:%G %n' /etc/myapp/keys/server.key

/etc/myapp — пример пути, а не системный путь НАЙС.ОС.

Права ключа, сертификата и PFX

Объект Пример режима Кому доступен
Закрытый ключ 0600 Владелец ключа
Каталог ключей 0700 Владелец
Сертификат открытого ключа 0644 По политике публикации
PFX с закрытым ключом 0600 Только участники переноса
Список отзыва / открытая цепочка По политике публикации Получатели

Файловые права — только один слой защиты. Дополнительно требуются контроль резервных копий, журнал аудита, защита памяти и ограничение удалённого доступа.

Регламент жизненного цикла

  1. Генерация: утверждённый алгоритм и paramset, доверенный источник энтропии.
  2. Выдача: защита файла/контейнера, назначение владельца и цели.
  3. Регистрация: учёт открытого ключа, сертификата, серийного номера и срока.
  4. Эксплуатация: минимальные права, обновления, журнал доступа.
  5. Ротация: параллельное внедрение нового ключа, проверка потребителей.
  6. Отзыв: публикация статуса, отключение старого доверия.
  7. Уничтожение: процедура, определённая политикой и типом носителя.

Резервное копирование

Создавайте резервную копию только по утверждённой процедуре. Простой cp на сетевой диск не гарантирует секретность. Если ключ размещён в неэкспортируемом хранилище, резервирование организуется средствами этого хранилища, а не извлечением в обычный PEM.

Передача через PFX

Установите пароль интерактивно при openssl pkcs12 -export, проверьте корректность импорта, удалите промежуточные незащищённые файлы по регламенту. Никогда не отправляйте пароль тем же каналом, что и PFX.

Реакция на компрометацию

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

Продолжение: ключи, PFX, КриптоПро.