Среда ограниченной оболочки
Иногда среда «песочницы» превосходит ваши требования. Если необходимо создать ограниченную среду для группы пользователей, позволив им лишь запускать определенные команды, необходимо продублировать все библиотеки и двоичные файлы этих команд для каждого пользователя. Вот где ограниченные оболочки (restricted shells) могут быть полезны. Многие оболочки имеют такую возможность, которая вызывается запуском оболочки с ключом -г. Хотя эта процедура не так безопасна, как основанная на системных вызовах среда «песочницы», работает она нормально, если вы считаете, что пользователи не имеют злого умысла, но могут быть не в меру любопытны.
Некоторые из известных возможностей ограниченных оболочек — это возможность запретить смену каталога программой, разрешая выполнение команды только по абсолютному пути, и запрет выполнения команд в подкаталогах. Помимо введения этих ограничений отключаются все операторы перенаправления, которые могут использоваться в командной строке. При этом ограничить список команд, которые может выполнить пользователь, можно просто: выбрав, какие команды должны быть доступны, и сделав на них символические ссылки внутри домашнего каталога пользователя. Если требуется выполнять лишь ряд команд, то можно создать сценарии, принадлежащие определенному пользователю. Эти сценарии будут выполняться в неограниченной среде, но будут недоступны для редактирования в этой среде самим пользователем. Настройки ограничения оболочки очень просты, тем не менее они предоставляют минимально ограниченный доступ. Ограниченные оболочки не в силах противостоять явным взломщикам, но несколько усложняют враждебную деятельность.