Изоляция процессов с помощью Jail в FreeBSD работает за счёт создания безопасной «клетки», внутри которой можно исполнять даже потенциально опасное программное обеспечение. 1
В основу Jail вошёл системный вызов chroot(2), при котором для текущего процесса и всех его потомков корневой каталог переносится в определённое место на файловой системе. 1 Таким образом, изолированный процесс может иметь доступ только к низлежащему дереву каталогов. 1
Кроме того, Jail имеет поддержку на уровне ядра, что позволяет ограничивать доступ к сети, общей памяти, переменным ядра sysctl и ограничивать видимость процессов вне Jail. 1
Некоторые ограничения, которые накладывает Jail:
Таким образом, с помощью Jail создаётся среда, в которой даже процесс с правами суперпользователя не может существенно нарушить работу операционной системы в целом. 3