Features/ChrootedServices: различия между версиями

Материал из ALT Linux Wiki
(→‎chroot: несколько примеров вызова update_chrooted)
Нет описания правки
 
Строка 5: Строка 5:
При этом пакет {{pkg|chrooted}} обеспечивает использование жёстких ссылок в случае, когда оригинальные файлы (конфигурация, библиотеки, бинарники) и «песочница» находятся в пределах одной файловой системы; впрочем, жёсткие ссылки менее безопасны, чем физические копии.
При этом пакет {{pkg|chrooted}} обеспечивает использование жёстких ссылок в случае, когда оригинальные файлы (конфигурация, библиотеки, бинарники) и «песочница» находятся в пределах одной файловой системы; впрочем, жёсткие ссылки менее безопасны, чем физические копии.


Некоторые варианты использования update_chrooted:
Содержимое «песочниц» обновляется командой
update_chrooted conf
update_chrooted all
Для частичного обновления можно вместо <tt>all</tt> указать ''тип'' ({{cmd|update_chrooted -l}} выведет все доступные типы).


  update_chrooted all
Работа <tt>update_chrooted</tt> управляется каталогом {{path|/etc/chroot.d}}, так что список сервисов, компоненты которых в вашей системе используют chrooted, можно посмотреть командой
  rpmquery -f /etc/chroot.d/* | sort -u


Следует отметить такие неочевидности:
Следует отметить такие неочевидности:
* после изменения {{path|/etc/resolv.conf}} или {{path|/etc/hosts}} необходимо выполнить команду {{cmd|update_chrooted conf}} (также отрабатывается при загрузке), чтобы обновить копии этих файлов в «песочницах»; без этого возможны проблемы вида «ping не работает»
* после изменения {{path|/etc/resolv.conf}} или {{path|/etc/hosts}} необходимо выполнить команду {{cmd|update_chrooted conf}} (также отрабатывается при загрузке), чтобы обновить копии этих файлов в «песочницах»; без этого возможны проблемы вида «ping не работает»
* монтирование {{path|/var}} с <tt>noexec</tt> также [http://lists.altlinux.org/pipermail/sisyphus/2006-August/085164.html может] привести к проблемам с работой chrooted-сервисов
* монтирование {{path|/var}} с <tt>noexec</tt> также [http://lists.altlinux.org/pipermail/sisyphus/2006-August/085164.html может] привести к проблемам с работой chrooted-сервисов

Текущая версия от 19:16, 22 января 2025

chroot

В ALT Linux существенная часть сервисов помещена в chroot, зачастую с пониженными правами, поскольку root в chroot — вовсе не гарантия, что он оттуда не выберется. Даже libresolv выполняется в chroot. Это может быть неудобным в том плане, что пути сдвигаются. Например, my.cnf живёт в /var/lib/mysql, добавляется сложностей с подключением дополнительных модулей или библиотек в «песочнице», как то перловых к Postgres или авторизационных к Postfix. Но обратная сторона медали в том, что если один из таких сервисов окажется взломанным, то в распоряжении атакующего будет гораздо меньше средств и привилегий для захвата всей системы.

При этом пакет chrooted обеспечивает использование жёстких ссылок в случае, когда оригинальные файлы (конфигурация, библиотеки, бинарники) и «песочница» находятся в пределах одной файловой системы; впрочем, жёсткие ссылки менее безопасны, чем физические копии.

Содержимое «песочниц» обновляется командой

update_chrooted all

Для частичного обновления можно вместо all указать тип (update_chrooted -l выведет все доступные типы).

Работа update_chrooted управляется каталогом /etc/chroot.d, так что список сервисов, компоненты которых в вашей системе используют chrooted, можно посмотреть командой

rpmquery -f /etc/chroot.d/* | sort -u

Следует отметить такие неочевидности:

  • после изменения /etc/resolv.conf или /etc/hosts необходимо выполнить команду update_chrooted conf (также отрабатывается при загрузке), чтобы обновить копии этих файлов в «песочницах»; без этого возможны проблемы вида «ping не работает»
  • монтирование /var с noexec также может привести к проблемам с работой chrooted-сервисов

Ссылки