Опубликован новый план реализации поддержки режима безопасной загрузки UEFI в Ubuntu

2012-06-22

После активного обсуждения вопроса добавления в UEFI-прошивки ключей Canonical, разработчики Ubuntu представили обновлённый план обеспечения работы режима безопасной загрузки UEFI. Представленный детальный план ограничивает включение в прошивки проверочных ключей Canonical только машинами на которые будет предустанавливаться Ubuntu или которые будут официально сертифицированы на совместимость с Ubuntu. Для остальных машин будет применён подход разработчиков Fedora Linux - на обычном установочном CD, предназначенном для широкого спектра оборудования, будет использован дополнительный загрузчик, заверенный ключом Microsoft. Таким образом Ubuntu можно будет без лишних усложнений установить на всех компьютерах, сертифицированных на совместимость с Windows 8.

В требования для ODM-производителей, на оборудование которых будет предустанавливаться Ubuntu, кроме обязательного наличия опции для отключения режима безопасной загрузки и интерфейса для добавления пользователем собственных ключей, добавлен пункт, указывающий на необходимость поставки в прошивке UEFI не только ключа Canonical, но и ключа Microsoft, что позволит обеспечить возможность установки сторонних ОС на машины поставляемые с Ubuntu. Что касается предложения по организации сервиса заверения дополнительных ключей для других дистрибутивов, то Canоnical заявила, что не планирует создавать такой сервис и будет использовать ключ только для своих нужд. Дистрибутивам, желающим обеспечить поддержку режима безопасной загрузки, рекомендовано получить ключ через сервис Microsoft, предоставляемый в рамках инициативы WinQual.

С технической стороны реализация поддержки режима безопасной загрузки UEFI очень похожа на подход, принятый в Fedora Linux. Также планируется использовать заверенный ключом Microsoft простейший начальный загрузчик, функции которого будут сведены к передаче управления более полноценному загрузчику, который будет использовать для собственной проверки проверочный ключ Canоnical. Для предустановленных систем или машин в прошивку которых входит проверочный ключ Canоnical, первый загрузчик будет пропускаться и управление будет передано сразу на полноценный загрузчик, заверенный ключом Canоnical.

Тем не менее, есть и несколько серьёзных отличий от подхода Fedora. Разработчики Ubuntu не планируют заверять цифровыми подписями ядро системы и драйверы, считая что главной задачей является не создание подписанной операционной системы, а обеспечение работы Ubuntu на системах с включенным режимом безопасной загрузки. Поэтому проверка по цифровой подписи будет производиться только для загрузчика. Canonical утверждает, что формирование подписей для ядра и драйверов не является жестким требованием спецификации, которая нацелена главным образом на защиту начальной стадии загрузки, до запуска ядра. Напомним, что Fedora Linux будет использовать проверку по цифровым подписям ядра и драйверов, что усложнит использование собственных сборок ядра, драйверов и модулей.

Второе отличие состоит в том, что при загрузке с проверкой цифровых подписей не будет использоваться загрузчик GRUB 2 (для обычных установок GRUB 2 будет применяться как и раньше). GRUB 2 распространяется под лицензией GPLv3, которая запрещает тивоизацию. Загрузка GRUB 2 на ПК с предустановленным производителем Ubuntu Linux, заверенного приватной цифровой подписью Canonical, которая не будет распространяться публично, можно рассматривать как нарушение GPLv3 в случае, если производитель нарушит требования поставщика ПО и не реализует в прошивке возможность отключения режима безопасной загрузки. В такой ситуации компания Canonical должна будет либо опубликовать закрытый ключ, либо отозвать проверочные ключи. Поэтому решено в таких случаях использовать другой загрузчик под более либеральной лицензией, над которым в настоящее время работают разработчики Ubuntu (планируется использовать модифицированный вариант Intel efilinux). Fedora продолжит использование GRUB 2, но нарушения GPLv3 не усматривается, так как данный дистрибутив не будет предустанавливаться с включенным режимом безопасной загрузки UEFI по контракту с производителями.