Операционная система Free BSD


Для чего используется бюджет пользователя?


А вот это - очень не простой вопрос.

Конечно, основное назначение бюджета - зарегистрировать юзера, чтобы он мог войти в систему и поработать на этой машине. Однако, существует некоторые нестандартные применения для этого механизма.

  • Обычные юзеры
  • Псевдо-юзеры
  • Почтовые юзеры
  • Гостевой вход
  • Автоматический запуск коммуникационных программ

Обычные юзеры

Когда обычный юзер заходит в систему (с физического терминала или по сети), он должен сказать свое имя (Login Name) и пароль (Password). Соответствующая программа сверяет эти данные с теми, что записаны в бюджете пользователя и, если они совпадают, разрешает вход в систему. То есть запускается программа, которая указана как Shell в бюджете пользователя. Юзер с помощью этой программы может запускать другие. При этом ему можно создавать/удалять/писать/читать файлы, которые находятся в его Home dir (тоже указана в бюджете).

Псевдо-юзеры

Часто бывает полезно ограничить некоторым программам (которые запускаются автоматически - ftp-сервер, www-сервер и т.п.) доступ к файлам и директориям.

Например, вы создаете на своей машине WWW-сервер. Естественно, его назначение - выдавать в сеть какие-то документы (файлы *.html), специально предназначенные для публичного обозрения. В то же время, не хотелось бы, чтобы он (из-за возможных ошибок или злонамеренных "закладок" в программе) мог выдавать наружу другие файлы, находящиеся в системе.

В Unix предусмотренно, что права на чтение каждого файла можно связать с определенным пользователем. Юзер может читать файлы, для которых он является "хозяином" или "владельцем" (на самом деле разграничение прав несколько более сложное, но в данном объяснении это не важно). Все остальные файлы можно сделать для него недоступными.

Таким образом, для решения задачи нужно

  • зарегистрировать фиктивного пользователя - например, www;
  • все файлы, к которым должна иметь доступ программа WWW-сервера, объявить "собственностью" юзера www (естественно, что ваши секретные файлы должны быть недоступны этому самому www);
  • объяснить системе, что когда запускается программа WWW-сервера, все должно выглядеть так, как будто его запустил реальный юзер www.




Начало  Назад  Вперед