Оглавление |
---|
Информация | ||
---|---|---|
| ||
|
Введение
Secure Boot («безопасная загрузка») — протокол, являющийся частью спецификации UEFI. Заключается в проверке подписи загружаемых UEFI-образов, используя асимметричную криптографию относительно ключей, хранящихся в ключевом хранилище системы.
Некоторые термины:
- Platform Key (PK) — открытый ключ владельца платформы. Подписи соответствующим закрытым ключом необходимы для смены PK или изменения KEK, db и dbx (описаны далее). Хранилище PK должно быть защищено от вмешательства и удаления;
- Key Exchange Key (KEK) — открытые ключи операционных систем. Подписи соответствующими закрытыми ключами необходимы для изменения баз данных подписей. Хранилище KEK должно быть защищено от вмешательства.
Подготовка компьютера
Информация | ||
---|---|---|
| ||
Установка Astra Linux и последующие действия должны производится только в режиме UEFI (т.е с отключенными в BIOS-е компьютера режимами CSM и Legacy).
Для создания загрузочного носителя требуется 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 устанавливается автоматически, при необходимости установить его можно командой:
Command |
---|
sudo apt install astra-safepolicy |
Дополнительно можно сразу установить необходимые пакеты (при наличии подключенных репозиториев пакетов эти пакеты будут автоматически установлены при первом запуске инструмента astra-secureboot):
Command |
---|
sudo apt install astra-safepolicy efitools sbsigntool uuid-runtime |
Для:
- Astra Linux Special Edition РУСБ.10015-01 очередное обновление 1.5 без установленных оперативных обновлений;
- Astra Linux Common Edition 1.11
все пакеты необходимо установить вручную (команду см. выше).
Подключить USB-накопитель.
Проверить имя подключенного накопителя, например, командой:
Command |
---|
lsblk |
Предупреждение |
---|
При выполнении дальнейших действий все данные на используемом накопителе будут удалены. |
Выполнить команду:
Command |
---|
sudo astra-secureboot /dev/{usb_flash} |
После выполнения указанной команды:
- в каталоге /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 будут не доступны режимы hibernate и hybrid-sleep. |
Отключение SecureBoot
Рекомендованный сценарий отключения SecureBoot:
- Удалить файл /etc/initramfs/post-update.d/update-efi-image;
- Сохранить копию файла /boot/efi/EFI/astralinux/grubx64.efi;
- Переустановить загрузчик grub.
Последовательность команд:
Command |
---|
if [ -f /etc/initramfs/post-update.d/update-efi-image ]; then rm /etc/initramfs/post-update.d/update-efi-image; fi |