Описанная ниже технология secureboot не является сертифицированным средством защиты загрузки операционной системы и не рекомендуется к применению. Установка оперативных обновлений на системы, защищенные с помощью secureboot, не поддерживается.
Для защиты загрузки ОС рекомендуется использовать сертифицированные аппаратно-программные модули доверенной загрузки, см. С какими АПМДЗ совместима Astra Linux Special Edition.
Штатным сертифицированным в составе Astra Linux средством защиты является Замкнутая Программная Среда (ЗПС).
Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-03 (очередное обновление 7.6)
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
- Astra Linux Special Edition РУСБ.10015-16 исп. 1
- Astra Linux Common Edition 2.12
Введение
Secure Boot («безопасная загрузка») — протокол, являющийся частью спецификации UEFI. Заключается в проверке подписи загружаемых UEFI-образов, используя асимметричную криптографию относительно ключей, хранящихся в ключевом хранилище системы.
Некоторые термины:
- Platform Key (PK) — открытый ключ владельца платформы. Подписи соответствующим закрытым ключом необходимы для смены PK или изменения KEK, db и dbx (описаны далее). Хранилище PK должно быть защищено от вмешательства и удаления;
- Key Exchange Key (KEK) — открытые ключи операционных систем. Подписи соответствующими закрытыми ключами необходимы для изменения баз данных подписей. Хранилище KEK должно быть защищено от вмешательства.
Подготовка компьютера
ВАЖНО!
Установка Astra Linux и последующие действия должны производится только в режиме UEFI (т.е с отключенными в BIOS-е компьютера режимами CSM и Legacy).
Подробнее про установку Astra Linux в режиме UEFI см.:
- Установка Astra Linux с загрузкой EFISTUB (без использования grub/grub2)
- Автоматическая установка Astra Linux Special Edition 1.7;
- Установка загрузчика GRUB2 в UEFI GPT.
Для создания загрузочного носителя требуется USB-накопитель с емкостью не менее 1ГБ.
Установка SecureBoot
Для:- Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.7 (потребуется подключение базового репозитория, см. Репозитории Astra Linux Special Edition x.7: структура, особенности подключения и использования );
- Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.6;
- Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.5 с установленными оперативными обновлениями;
- Astra Linux Common Edition 2.11.* - 2.12;
необходимо наличие установленного пакета astra-safepolicy версии 1.0.32 и выше. В системах Astra Linux Special Edition с установленным актуальным обновлением пакет astra-safepolicy устанавливается автоматически, при необходимости установить его можно командой:
- Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.5 без установленных оперативных обновлений;
- Astra Linux Common Edition 1.11
все пакеты необходимо установить вручную (команду см. выше).
Подключить USB-накопитель.
Проверить имя подключенного накопителя, например, командой:
Выполнить команду:
После выполнения указанной команды:
- в каталоге /root/secureboot/key будут размещены все необходимые для работы ключи;
- на указанном в команде USB-накопителе будет размещена загрузочная информация с необходимыми файлами.
Перезагрузить систему.
В BIOS (или функциональной клавишей F12) выбрать вариант загрузки с UEFI: USB;
Если все действия выполнены правильно, то загрузка будет выполнена с USB-накопителя и должен загрузиться KeyTool.
После загрузки KeyTool:
В меню "KeyTool" выбрать пункт "Edit Keys" и нажать Enter.
В меню "Select Key to Manipulate" выбрать пункт "The Allowed Signatures Database (db)" и нажать Enter ;
В меню "Manipulating Contents of The Allowed Signatures Database (db)" выбрать пункт "Replace Keys";
Выбрать USB-накопитель, затем последовательно выбрать каталоги efi/ -> boot/ -> keys/ и выбрать файл db.auth;
Повторить действия сначала для KEK, потом для PK, выбрав, соответственно, файлы KEK.auth и PK.auth;
Вернуться в главное меню двойным нажатием на Esc, выбирать Exit;
После перезагрузки войти в BIOS и включить режим SecureBoot.
Внимание!
Отключение SecureBoot
Рекомендованный сценарий отключения SecureBoot:
- Удалить файл /etc/initramfs/post-update.d/update-efi-image;
- Сохранить копию файла /boot/efi/EFI/astralinux/grubx64.efi;
- Переустановить загрузчик grub.
Последовательность команд:
mv /boot/efi/EFI/astralinux/grubx64.efi /boot/efi/EFI/astralinux/grubx64.efi-old
grub-install --bootloader-id=astralinux