Описание тега chroot
chroot
часто используется для:
- Ограничить пользователя определенным каталогом (используется ssh, например)
- Введите сломанную систему, чтобы ее можно было починить (например, использовать такие инструменты, как менеджеры пакетов, которые предназначены для работы в рабочей системе)
- Для установки новой системы (например, Gentoo можно установить с
chroot
)
Какие chroot
делает, чтобы изменить то, что процесс считает корневым каталогом, который изменяется, когда процесс ожидает что-то найти - например, когда процесс chroot
в /home/foo/my-chroot
, он может ссылаться на файл в /home/foo/my-chroot/bin/sh
используя /bin/sh
,
Это эффективно "обманывает" процесс, так что он способен работать в системе, в которой корневой каталог не совпадает с ожидаемым процессом.
Другое следствие заключается в том, что в теории (но см. Ниже) процесс не может видеть глубже, чем его chroot
Каталог, потому что /..
решает в /
,
Однако chroot не является и никогда не был разработан как инструмент безопасности, и для его выхода используются хорошо известные эксплойты. Вместо этого на *BSD следует использовать jails, а пользователи Linux должны рассмотреть либо linuxjail, либо VServer.