Эти проекты имеют устаревшие инструкции. Я знаю это, потому что я публикую репозиторий Debian и обновил свои инструкции, когда узнал об изменениях в Debian 9 APT. Действительно, эта часть руководства устарела, поскольку это неправильный каталог.
На самом деле это не связано с .d
каталогами, а связано с предотвращением межсайтовой уязвимости в APT. В старой системе для удобства использовались отдельные файлы ключей, но теперь это необходимо для безопасности; ваша безопасность.
Это уязвимость. Рассмотрим двух издателей репозитория, A и B. В мире Debian 8 и ранее ключи обоих издателей помещались в единый глобальный набор ключей на компьютерах пользователей. Если издатель А может каким-то образом договориться о замене WWW-сайта репозитория издателя Б, то А может публиковать подрывные пакеты, подписанные собственным ключом А , которые APT с радостью примет и установит. В конце концов, ключу A доверяют во всем мире для всех хранилищ.
Меры предосторожности предназначены для пользователей, чтобы использовать отдельные наборы ключей для отдельных издателей и ссылаться на эти наборы ключей с индивидуальными Signed-By
настройками в своих определениях репозитория. В частности, ключ издателя A используется только в Signed-By
хранилище A, а ключ издателя B используется только в Signed-By
хранилище B. Таким образом, если издатель A вытесняет хранилище издателя B, APT не будет принимать подрывные пакеты из него, поскольку они и хранилище подписано ключом издателя А, а не издателем Б.
/etc/apt/trusted.gpg.d
Механизм под рукой старший бедняка несколько испорчен полпути к этому, со спины в 2005 году или около того , что не достаточно хорош. Он устанавливает связку ключей в отдельном файле, так что он может быть упакован и просто установлен за один шаг менеджером пакетов (или загружен с fetch
/ curl
/ wget
), как любой другой файл. (Менеджер пакетов предотвращает установку специального пакета this-is-my-repository-keyring издателя A обычным способом, который он обрабатывает конфликты файлов между пакетами в целом.) Но он все равно добавляет его в набор ключей. это глобально доверено для всех репозиториев. Полный механизм, который существует в настоящее время, использует отдельные, не глобально доверенные, файлы ключей в /usr/share/keyrings/
.
Мои инструкции уже есть. Fo Есть шаги, чтобы переместить собственные репозитории Debian в этот механизм, чтобы они также больше не использовали ключи, которым доверяют глобально. Возможно, вы захотите поговорить с теми «большинством проектов», которые вы нашли. В конце концов, они в настоящее время инструктируют вас передать им глобальный доступ к APT на вашей машине.
дальнейшее чтение