LINUX.ORG.RU

Ubuntu напишет свой загрузчик, чтобы обойти ограничения лицензии GPLv3 о запрете тивоизации

 , , ,


0

2

С целью обойти запрет на тивоизацию в лицензии GPLv3, под которой распространяется загрузчик GRUB2 и позволить производителям поставлять компьютеры с предустановленной ОС Ubuntu, загружающейся в режиме Secure Boot, компания Canonical объявила о начале работы над созданием собственного загрузчика, который будет лицензирован под более либеральной лицензией.

За основу нового загрузчика будет принят загрузчик efilinux, разработанный компанией Intel.

Для получения статуса Ubuntu Certified разработчики Canonical также потребуют от поставщиков оборудования наличия в UEFI ключей WinQual, позволяющих загрузку других ОС. Кроме того, политика компании остаётся прежней и компания поддерживает производителей, которые предоставляют возможность отключения Secure Boot.

В дистрибутивах Ubuntu, предназначенных для установки на стороннее оборудование, будет использоваться загрузчик, подписанный ключом Microsoft, аналогично подходу дистрибутива Fedora, но ядро и другие компоненты системы подписываться не будут. На системах с отключенным Secure Boot будет автоматически использоваться GRUB2.

>>> Подробности

★★★★★

Проверено: catap ()
Последнее исправление: Aceler (всего исправлений: 11)

Спрашивается, нахрена? UEFI и так умеет само Linux (>=3.3) грузить. Хотят прогибаться под него, так прогибались бы полностью и по нормальному.

ei-grad ★★★★★
()
Ответ на: комментарий от Quasar

свой дистрибутив, ставящийся в венду, сделать, через виртуальную машину.

Тебе надо такое гавно - ты и делай.

ForwardToMars
()
Ответ на: комментарий от zgen

Вот так, не очень сложно линупс придет к тому, с чего начал - еще одна проприетарная, закрытая и насквозь переподписанная операционная система.

Разве Canonical прекращает выкладывать исходники и свободные сборки?

Подобные рассуждения похожи на истеричек из Польши, Грузии и Прибалтики: «Россия хочет воссоздать советский союз! Они хотят воссоздать империю в лице Евразийского союза и завоевать нас! Аааа!!! Мы все умрем!!!»

Пейте успокоительное и не передергивайте факты.

Fredrik
()
Ответ на: комментарий от Reset

в случае с secure boot модифицированный код не будет работать без подписи, а это противоречит GPL3

В Slackware & Debian & RedHat (и прочих. Ну кроме BolgenOS)все пакеты подписаны ключом маинтейнера, и даже не поставяться (если только насильно, на свой страх и риск), и ничего - GPLv3 работает. Почему подписанный загрузчик так не может? Разница лишь в том, что загрузчик проверяется UEFI, а пакеты ПМом. И в том и в другом случае маинтейнер подписывает свой код своим закрытым ключом.

drBatty ★★
()
Ответ на: комментарий от drBatty

и даже не поставятся

yes | yum update и всё и _поставится_ и _заработает_

Разница лишь в том, что загрузчик проверяется UEFI, а пакеты ПМом.

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

Reset ★★★★★
()
Ответ на: комментарий от Reset

в случае с secure boot модифицированный код не будет работать без подписи, а это противоречит GPL3

кажется понял:

для _работы_ кода нужно:

1. подпись.
2. публичный ключ.

Секретный ключ для работы не требуется, он вообще не покидает комп маинтейнера. Потому, никакого нарушения тут нет.

drBatty ★★
()
Ответ на: комментарий от Axon

Я хотел сказать, что мне не понятно, зачем создавать проблемы и затем героически их решать, если никакой, даже сомнительной пользы это не принесет.

Вы сейчас почти дословно процитировали моё сообщение в другом секуребут-треде. Мне тоже непонятно...

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

Orlusha ★★★★
()
Ответ на: комментарий от drBatty

Разница в том, что подписанный пакет - это всего лишь архив. А вот файлы в архиве не подписаны. Следовательно, для файлов в архиве нет нарушения GPL3

Kuzz ★★★
()
Ответ на: комментарий от Reset

yes | yum update и всё и _поставится_ и _заработает_

ну я и говорю, насильно, отвечая «да» на все вопросы. Удачного обновления.

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

кто ж тебе не разрешает подписывать код? подписывай на здоровье. И модифицируй как хочешь, никто же не против. Ну а то, что тебя никто не знает среди производителей - чисто твои проблемы. Я понимаю, обидно, но _формально_ все правила не нарушены. Точно так же, как и в ПМ: я могу пакет от Патрега поставить, могу свой поставить, а твой - не могу. Тут производитель виноват - ну можно отключение сделать, или лучше возможность ввода своих кодов, но это уже проблемы устройства а не кода.

А вообще, фишка здравая и полезная. Если её конечно реализуют не через ж. Ну вы поняли...

drBatty ★★
()

Что греха таить, все проблемы от мелкомягких !

anonymous
()
Ответ на: комментарий от anonymous

Дебиан ответит только тогда, когда Secure Boot морально устареет.

CYB3R ★★★★★
()
Ответ на: комментарий от Reset

никак. необходима фишка, которая позволяет вбивать ключи. Исключительно вручную (ну в смысле с флешки).

А если такой фишки не сделают, то это будет тоже самое, как проверять какой загрузчик, и вообще не загружать grub & lilo. Только ntldr. Это конечно отлично для мысы, но вот производители вряд-ли на такое пойдут.

drBatty ★★
()

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

Opeth ★★★
()
Ответ на: комментарий от drBatty

кто ж тебе не разрешает подписывать код? подписывай на здоровье. И модифицируй как хочешь, никто же не против.

Как я его запущу?

Я понимаю, обидно, но _формально_ все правила не нарушены.

Нарушены. Я не могу запустить модифицированный код.

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

Можно сделать, но если это сделано не будет, то требования GPL3 нарушены, и если производитель продает такое устройство с таким загрузчиком, то он нарушает GPL3.

Reset ★★★★★
()
Ответ на: комментарий от Kuzz

Разница в том, что подписанный пакет - это всего лишь архив. А вот файлы в архиве не подписаны. Следовательно, для файлов в архиве нет нарушения GPL3

какая разница, в каком контейнере лежат файлы? могут быть и одним setup.exe. могут быть и просто каталогом, тогда просто придётся подписать каждый файл. Подпись архива (верная), доказывает, что ВСЕ файлы в этом архиве бит-в-бит такие-же, как у разраба.

drBatty ★★
()
Ответ на: комментарий от drBatty

Подпись архива (верная), доказывает, что ВСЕ файлы в этом архиве бит-в-бит такие-же, как у разраба.

Именно. Пакет - лишь средство доставки файлов с машины вашего друга (майнтейнера) к вам с гарантией, что файлы не поменяли во время доставки. Сами же файлы не несут на себе подпись, следовательно их можно менять как угодно.

Вот если бы на сами файлы налагалась подпись, было бы и нарушение.

Kuzz ★★★
()
Ответ на: комментарий от Reset

Я не могу запустить модифицированный код.

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

Можно сделать, но если это сделано не будет, то требования GPL3 нарушены, и если производитель продает такое устройство с таким загрузчиком, то он нарушает GPL3.

да. но есть и другой вопрос: А должен-ли производитель _железа_ выполнять лицензию на _код_? Очевидно, эта лицензия ну никаким боком к производителю не относится. Потому он вправе так испортить железо, что-бы на нём только определённый код выполнялся. И что тут такого? Ну ведь было же: MacOS выполнялась только на железе Apple. И что тут такого? Винмодемы работали только в венде. Ну обидно конечно, но такая се ля ви.

drBatty ★★
()
Ответ на: комментарий от drBatty

А должен-ли производитель _железа_ выполнять лицензию на _код_?

Если он распространяет свое железо вместе с программным обеспечением, то обязан.

Reset ★★★★★
()

Ubuntu напишет...

Пожалуй, Canonical все же напишет, а не Ubuntu.

niklep
()
Ответ на: комментарий от Kuzz

Сами же файлы не несут на себе подпись, следовательно их можно менять как угодно.

нельзя. Подписью обладает вся совокупность файлов. Зачем подписывать Over9000 файлов? Чисто для удобства сделано. И менять файлы _нельзя_. Если ты поменяешь хоть бит, получишь просто архив, можешь его _своей_ подписью подписать.

drBatty ★★
()

> За основу нового загрузчика будет принят загрузчик efilinux, разработанный компанией Intel.

Пожалуйста, уберите это из новости! Пусть она выглядит так, как будто Canonical сама написала что-то, во всех же новостях так!

ZenitharChampion ★★★★★
()

Мне вот интересно - почему просто не сделать «загрузчик для загрузчика», который и подписать? То бишь efi будет грузить подписаный grub-loader-signed, а уже он будет загружать собственно сам неподписаный grub

no-dashi ★★★★★
()
Ответ на: комментарий от Reset

Если он распространяет свое железо вместе с программным обеспечением, то обязан.

в этом случае он(производитель) будет вынужден свернуть торговлю, либо вбить код маинтейнера в свой девайс. И лицензия таки не будет нарушена.

Кто и когда гарантировал работу _любого_ софта X на девайсе Y? Никто. Конкретный софт X1 работает, всё ОК, а какой-то левый X2 не работает. И что тут такого?

Производитель обязан выполнять лицензию на ПО, ровно до того момента, пока это ПО неизменно. Изменил хоть бит - производителю на тебя уже наплевать, ССЗБ.

drBatty ★★
()
Ответ на: комментарий от drBatty

нельзя


Кто запретил?

Вот пришел мне пакет (архив). В нем файлы. Программой работы с архивами (ПМ) я проверил его целостность и распаковал. Файлы работают.

Теперь я один из этих файлов модифицировал (не важно как, перекомпилировал ли из исходников или поменял хекс-редактором), но он все равно может работать в моей системе.

Kuzz ★★★
()
Ответ на: комментарий от no-dashi

efi будет грузить подписаный grub-loader-signed, а уже он будет загружать собственно сам неподписаный grub

тогда злоумышленник сможет подменить не подписанный grub на свою версию.

drBatty ★★
()
Ответ на: комментарий от at

Поясните, пожалуйста, для тех кто в танке. При чем здесь GPLv3. Насколько понял вендор подписывает grub (или любой другой загрузчик) ключом, паблик которого находится в UEFI. Но ключи не являются частью кода, по крайней мера не разу не слышал, требования выкладывать приватные ключи при подписывании GPL-ного кода.

GPLv3 накладывет ограничение на ТиВоизацию. Относительно данного примера это выглядит так: если загрузчик под GPLv3, то либо (1) комп (устройство) должно позволять грузить любой другой загрузчик, либо (2) производитель GPLv3 должен опубликовать приватный ключ.

Производитель компа с SecureBool может запретить загрузку не подписанных загрузчиков. Значит пункт 1 - отпадает.

С пунктом 2 - другая беда. В SecureBool можно (по спекам) грузить только не опубликованные приватные ключи. Опубликованные нельзя ибо это нарушение принципов SecureBoot. Но и непубликовать ключ нельзя ввиду требования GPLv3.

Дальше - больше. Если производитель устройства поставил загрузчик от Каноникал (подтвержденный прямым контрактом с Каноникал), то производитель загрузчика - Каноникал. Производитель то не менял ПО. Дальше производитель вписывает публик ключ в UEFI и НЕ РАЗРЕШАЕТ отключение SecureBoot. Нарушитель GPLv3 - производитель ПО, т.е. Каноникал и он должен опубликовать приватный ключ. Но после публикации этот ключ ДОЛЖНЫ удалить из всех прошивок, т.к. нарушает SecureBoot.

И дальше по циклу ;)))

Защита от такой подставы две - либо отказаться от прямых контрактов и OEM-поставок (на что Каноникал не пойдет) либо отказаться от GPLv3 для SecureBoot загрузчика.

PS Федора не имеет контрактов с поставщиками, потому ей подойдет и первый путь. А вот RHEL уже попляшет чтобы и под SecureBoot работать и GPLv3 не нарушить.

VoDA ★★
()
Ответ на: комментарий от Kuzz

Кто запретил?

подпись поменяется. и ты не сможешь этот изменённый архив опять поставить например другу.

Теперь я один из этих файлов модифицировал, но он все равно может работать в моей системе.

а причём тут архив? это уже программа, которую ты никак обратно в пакет не уложишь. Она постоянно меняется в системе, работает же!

drBatty ★★
()
Ответ на: комментарий от Loki13

А я очень хочу мать с uefi, насколько я понял там можно ядро грузить сразу.

И получишь Legacy Boot - ЛОЛ

Из релизнотесов ядра 3.3 «добавлена поддержка загрузки ядра напрямую с помощью EFI без использования загрузчика; »

это для Intel Mac -ов, а для обычных пк никто не станет отдельно делать ибо есть - (см. выше)..

uin ★★★
()
Ответ на: комментарий от VoDA

RHEL уже попляшет чтобы и под SecureBoot работать и GPLv3 не нарушить.

Десктопы и ноутбуки для восьмерочки алтимейт не являются ЦА RHEL, а на всех серверах либо будет возможность отключить SecureBoot, либо оного не будет.

anonymous
()
Ответ на: комментарий от drBatty

подпись поменяется. и ты не сможешь этот изменённый архив опять поставить например другу.

Ну ты и трололо... только что же указали на то как пакетные менеджеры позволяют отключить проверку подписей при установке. Если бы все мати реализующие SecureBoot также позволяли это, разговор бы был ни о чем.

anonymous
()
Ответ на: комментарий от Nxx

Вместо наезда на производителя за нарушение GPLv3

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

подать в суд на производителя, который нарушает GPLv3, продавая компы, завязанные на убунту они даже не рассматривают

Конечно, производителю нафиг не упала убунта, если из-за нее у него могут быть юридические проблемы. Canonical просто пытается найти юридически безопасный для производителя способ поставлять убунту на компах с efi. Если такого способа не будет найдено, просто не будет предустановленного линукса.

anonymous
()
Ответ на: комментарий от KivApple

сколько раз это нужно процитировать, чтобы дошло? они ни в каком случае не собираются проверять ядро и модули.

можно ссылку на официальный источник от Каноникал, который пишет, что при загрузке на SecureBoot они не будут проверять ядро и модули?

если мне потребуется, я просто выдерну из свежей Ubuntu grub и поставлю в свой уютный арчик

только вместо граб будет UbuntuSecure loader и ядро с модулями будет тоже от Убунты. как сделствие от арча останется только юзер-спейс.

VoDA ★★
()
Ответ на: комментарий от anonymous

а на всех серверах либо будет возможность отключить SecureBoot, либо оного не будет.

Ссылку плиз хотя бы на одного из производителей брендовых серверов (Intel, Dell, HP).

Кстати серверная винда тоже потребует СекьюреБут и, как следствие, серверные платформы позволяющие запуск винды (а таких большинство) будут с UEFI.

VoDA ★★
()
Ответ на: комментарий от drBatty

а причём тут архив? это уже программа

Лицензия как раз и распространяется на программы а не на сам контейнер/архив

ты не сможешь этот изменённый архив опять поставить

Потому что задача доставки неизмененных файлов не выполнена. Но этот архив можно просто распаковать и запустить находящиеся в нем программы. Т.е. условие возможности запуска измененных программ выполняется

Kuzz ★★★
()
Ответ на: комментарий от Nxx

Иначе только полное закрытие исходников загрузчика, что не является допустимым в случае свободной Убунты

Нормальную альтернативу - подать в суд на производителя, который нарушает GPLv3, продавая компы, завязанные на убунту они даже не рассматривают - зачем с друзьями судиться.

Производитель устройств может не являться производителем ПО. Соответственно комс - его, а ОС и загрузчик - ПО от Каноникал. И судебные претензии по нарушению GPLv3 идут на Каноникал. Производитель компов лишь показывает договор с Каноникал и переданные ему ISO-шники.

PS дальше упрется в то, прописано ли в договоре между Каноникал и железячником обязательство по разрешению загрузки без SecureBoot. Если да, то нарушитель железячник, а если нет или этот пункт можно признать ничтожным, то Каноникал становится раком.

VoDA ★★
()

Microsoft заявила, что поставщики могут реализовать возможность добавления других подписей, и позже сделала это обязательным требованием сертификации, однако для устройств на ARM (ранее речь могла идти о мобильных устройствах с ОС Windows Phone, но как раз в те дни Qualcomm объявила о планах выпуска субноутбуков с поддержкой Windows 8) требование противоположное: отключение «безопасной загрузки» (и, соответственно, установка других ОС) должно быть невозможным.

То есть невозможность отключения «безопасной загрузки» будет только на ARM и мобильниках с ОС Windows. Это значит, что не у всех будет невозможность отключения «безопасной загрузки», да и производителям это не выгодно. К тому же многие компы уже сейчас продаются без ОС, а значит право выбора операционки останется.

Aligator
()
Ответ на: комментарий от drBatty

Почему подписанный загрузчик так не может? Разница лишь в том, что загрузчик проверяется UEFI, а пакеты ПМом. И в том и в другом случае маинтейнер подписывает свой код своим закрытым ключом.

проблема в том, что нет гарантии, что в UEFI можно внести дополнительные ключи. а те, что внесены обязаны быть не опубликованными (и приватными).

VoDA ★★
()

Кто-нибудь объяснит доброму Анону, почему до сих пор мы не видим антимонопольного иска к майкросоут и производителям железа? Это-ж величайший из сговоров!

anonymous
()
Ответ на: комментарий от drBatty

А должен-ли производитель _железа_ выполнять лицензию на _код_? Очевидно, эта лицензия ну никаким боком к производителю не относится.

GPLv3 обязывает. Остается только разобраться на кого падает эта обязанность (на производителя железа или софта/Каноникал). Но обязательство действительно в любом случае.

Ну ведь было же: MacOS выполнялась только на железе Apple.

Не было - МакОС никогда не был под GPLv3. А именно ее пункт о запрете ТиВо-изации основа данного флейма.

VoDA ★★
()
Ответ на: комментарий от no-dashi

Мне вот интересно - почему просто не сделать «загрузчик для загрузчика», который и подписать? То бишь efi будет грузить подписаный grub-loader-signed, а уже он будет загружать собственно сам неподписаный grub

grub-loader-signed - GPLv3 значит все проблемы описанные выше. И, как следствие, на это не пойдет ни Каноникал, ни федора.

VoDA ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.