Изолированная среда сборки (введение)

Зачем:

В Fedora и Debian:

ALT Hasher

(из описания)

  1. Пользователь C порождает среду (aptbox) для работы с apt.
  2. Полностью удаляется сборочная среда, возможно оставшаяся от предыдущей сборки. Удаление происходит последовательно в чруте пользователем U, в чруте пользователем R и, наконец, пользователем C.
  3. Пользователь C создаёт каркас новой сборочной среды, состоящий из вспомогательных каталогов и вспомогательных статически слинкованных программ (ash, find и cpio). С помощью вспомогательной привилегированной программы создаётся фиксированный набор устройств, достаточной для нормального функционирования сборочной среды и при этом не несущий угрозы host-системе.
  4. Порождается базовая установочная среда, представляющая собой набор средств, необходимых для штатной установки пакетов в эту среду. Пользователь C с помощью aptbox определяет набор пакетов, необходимых для порождения базовой установочной среды. Пользователь R с помощью вспомогательных статически слинкованных программ распаковывает эти пакеты.
  5. Порождается базовая сборочная среда, представляющая собой набор средств, необходимых для сборки любого пакета. Пользователь C с помощью aptbox определяет набор пакетов, пользователь R устанавливает их.
  6. Проверяется исходный пакет.
  7. Порождается сборочная среда для данного пакета. Пользователь U извлекает сборочные зависимости пакета, пользователь C с помощью aptbox определяет набор пакетов для установки, и пользователь R устанавливает их.
  8. Пользователь U осуществляет сборку пакета и проверку результатов сборки.

Такая схема призвана исключить атаки вида U->R, U->C, R->C, а также все виды атак на root.

(установка и настройка hasher)

Сборка:

$ hsh ~/hasher path/to/foobar-0.0-alt0.src.rpm