Подписание скомпилированного ядра для безопасной загрузки

Я следую приведенным здесь шагам , чтобы сгенерировать ключи, чтобы подписать копию ядра, которое я скомпилировал сам. Однако в середине процесса, когда я пытаюсь проверить, что «главный сертификат подписан его закрытым ключом», запустив

$ openssl verify ./master-public.pem

, он завершится неудачно со следующим выводом:

C = GB, ST = Isle of Man, L = Douglas, O = Canonical Ltd., CN = Canonical Ltd. Master Certificate Authority
error 18 at 0 depth lookup: self signed certificate
error ./master-public.pem: verification failed

Ожидаемый результат в соответствии с документацией:

./master-public.pem: C = GB, ST = Isle of Man, L = Douglas, O = Canonical Ltd., CN = Canonical Ltd. Master Certificate Authority
error 18 at 0 depth lookup:self signed certificate
OK

Как, вероятно, очевидно, я не являюсь экспертом в махинациях, связанных с безопасной загрузкой, и потратил довольно много времени, пытаясь выяснить, что не так без всяких указаний. Упомянутая выше веб-страница также не оказывает никакой помощи.

Может кто-нибудь сказать мне, почему эта ошибка может происходить, и как ее исправить? Являются ли инструкции на вики Ubunutu устаревшими? Если да, есть ли в наличии современные инструкции? Все, что я хочу сделать, это скомпилировать и запустить копию ядра staging с включенной Secure Boot.

0
задан 18 June 2019 в 12:11

2 ответа

Шаги, приведенные здесь , на самом деле работали.

0
ответ дан 18 June 2019 в 12:11

Я закончил тем, что

  • собрал собственное ядро ​​с помощью make bindep-pkg из vanilla TGZ с https://kernel.org
  • загрузив его с помощью kexec

Итак Подписание не требуется: UEFI загружает официально подписанное ядро ​​Ubuntu, затем мое пользовательское ядро ​​​​загружается из пользовательского пространства Linux как задача cron @reboot.

1
ответ дан 2 November 2020 в 16:33

Другие вопросы по тегам:

Похожие вопросы: