Alukardd

Gold Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору RuPurple Цитата: Я хотел бы уточнить, если я добавлю локальное зеркало в свой sources.list, то откуда apt будет знать, что пакеты с этого зеркала нужно проверять и проверять оригинальным ключом? | Разжую немного по пунктам: - Надо понимать что репозиторий, это просто набор статичных файлов, доступных _обычно_ по http.
- Когда Вы добавляете новый репозиторий, Вы сначала скачиваете и прописываете его GPG ключ (например так: wget -qO - http://deb.opera.com/archive.key | sudo apt-key add -) . В случае с основным зеркалом репозитория, за Вас это делает инсталятор (ключ есть в базовом образе, скорее всего в виде пакета debian-archive-keyring).
- Далее, когда вы выполняете apt-get update прежде всего скачивается Release файл, в котором указаны: информация о репозитории; а так же md5 и sha256 контрольные суммы всех метафайлов репозитория, описывающих списки пакетов для той или иной архитектуры. Этот самый release файл (/var/lib/apt/lists/mirror.yandex.ru_debian_dists_sid_InRelease) в конце имеет GPG подпись. Её то apt и проверяет, тем самым убеждаясь что release файл является подлинным и сформирован тем кем мы ожидаем.
- Далее сверяется md5/sha256 файла со списком пакета с тем что указано в Release файле (/var/lib/apt/lists/mirror.yandex.ru_debian_dists_sid_main_binary-amd64_Packages).
- В файле с пакетами содержатся: описания всех пакетов; путь до .deb файла в репозитории; ну и конечно md5 и sha256 deb пакета.
- В общем-то всё, хотя в самом .deb пакете (это просто ar архив) содержится в файле control.tar.gz файл md5sums, в котором перечислены md5 суммы всех файлов, которые будут распакованы из data.tar.gz к Вам в систему.
Как-то так оно и работает. Таким образом, любое зеркало репозитория просто работает. Используются оригинальные подписи и не надо ни чего мудрить. Да всё держится на одной подписюльке Release файла. https://wiki.debian.org/SecureApt
---------- Microsoft gives you windows, linuх gives you the whole house... I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it. |
| Всего записей: 6586 | Зарегистр. 28-08-2008 | Отправлено: 11:54 08-11-2016 | Исправлено: Alukardd, 17:14 08-11-2016 |
|