GrabDuck

Кольцо Всевластия и права пользователей в операционных системах

:

Введение

Вспомним произведение Дж. Р. Р. Толкиена « Властелин Колец». Гортхаур (в дальнейшем более известный под ником Саурон) в данном произведении создал некоторую систему, состоящую из 19 «пользователей» и одного «администратора».
Пользователи были разделены на три группы, в зависимости от получаемых доступов к функциям системы. Эти группы носили название «Эльфы», «Гномы» и «Люди».
Аккаунты группы «Эльфы» были заведены самими пользователями системы, и их обладатели хотя и не имели полного доступа к функциям (как Администратор), однако и Администратор не контролировал их работу.
Оставшиеся группы «пользователей» получали определенные привилегии в зависимости от своих навыков и особенностей. Взамен они попадали под контроль «администратора» данной системы, но опять же по разному в зависимости от способностей и навыков «пользователя». «Администратор» же располагал полным набором привилегий и дополнительными, позволяющими контролировать «пользователей». Кроме того, существовала обратная связь – пользователи чувствовали администратора.
Эти принципы очень похожи на принципы реальных операционных систем. Рассмотрим некоторые из них.

Заведение учетных записей

Windows

В Windows аккаунт пользователя может создать другой пользователь, обладающий правами администратора.

На примере рассмотрю создание пользователя в OS Windows 7.
1) В панели управления открывается вкладка «Учетные записи пользователей»
image
2) Выбирается пункт «управление другой учетной записью»
image
3) Выводится окно со списком существующих учетных записей, под окном есть кнопка «создание учетной записи»
image
4) Предлагается ввести имя учетной записи и тип: администратор или обычный доступ
image

Linux

В Linux можно создать аккаунт нового пользователя, только обладая правами суперпользователя.
На следующем скриншоте показано, как вывести список всех пользователей на данном компьютере:
image
Перейдем к процессу создания нового пользователя.
1) Выполним вход за суперпользователя.
image
2) Вызовем команду для заведения нового пользователя adduser [имя_пользователя]. Имя вводится маленькими латинскими буквами, допускается символ подчеркивания, и вводится его пароль с подтверждением.
image
3) Возможен ввод необязательной информации о пользователе (имя, адрес, телефоны, дополнительная информация).
image
4) Подтверждаем правильность введенных данных.
image
Теперь при выводе списка пользователей отображается и новый пользователь с введенной информацией:
image
Удалить аккаунт пользователя можно введя от имени суперпользователя команду userdel.

Возможности пользователей в операционных системах

Windows
Администратор

Одной из главных причин разделения пользователей по правам является проблема безопасности системы. Администратор компьютера может устанавливать программы, подключать внешние устройства, изменять учетные записи пользователей, даже изменять и удалять системные файлы. Неграмотное использование этих привилегий может привести к некорректной работе компьютера в руках неопытного пользователя и нанести немалый вред работоспособности устройства.
На одном компьютере может быть заведено несколько пользователей с правами администратора, при этом тип пользователя настраивается при его регистрации (см. раздел Заведение учетных записей. Windows)

Ограниченные пользователи

В Windows XP проблему начали решать путем создания так называемых «ограниченных пользователей», обладавших самыми необходимыми правами. В Windows Vista появляется функция контроля учетных записей, которая уведомляет пользователя о его действиях, требующих права администратора (изменение реестра, установка программ и т.д.). Если пользователь данными правами не обладает, его просят ввести данные для получения прав.

Гости

Обычно в системе заводят самый «бесправный» класс пользователей Guest, которому дается возможность просматривать собственный раздел с документами и пользоваться установленными программами.

Linux

Администратор в Linux системах называется root. На компьютере есть только один root, его пароль задается при установке системы (как в Debian 6) или его просто нет (*ubuntu linux, для доступа к root пользователю пароль root в этом семействе операционных систем требуется задать). Root- пользователь работает только в консольном режиме и не обладает возможностью подключения графической оболочки.
Для доступа к root пользователю (суперпользователю) используется консольная команда
su // SuperUser
Далее предлагается ввести пароль

password:

****

После чего пользователю даются права администратора.
Пользоваться суперпользователем небезопасно и крайне не рекомендуется при работе с системой. Ведь от имени суперпользователя можно нечаянно внести такие изменения, которые приведут к изменению системы и дальнейшему сбою. В случае, когда пользователю не хватает прав для выполнения операции, и он точно уверен, что ему требуется ее выполнить, он может сделать это «от имени» суперпользователя при помощи команды sudo (SuperUser Do), которая требует только чтобы активный пользователь был прописан в /etc/sudoers. Пример:
Создание пароля root для *Ubuntu linux:

sudo passwd root // Далее можно пользоваться

root пользователем

как в других Linux системах

Пример использования команды sudo для монтирования внешнего флеш-накопителя:

• Обычный пользователь не обладает достаточными правами для монтирования внешнего флеш-накопителя:
image
• Выполним команду sudo для получения соответствующих привилегий:
image

В целом суперпользователь Linux сильно напоминает администратора Windows по предоставляемым правам.

Android

Как отдельную систему можно выделить мобильную платформу Android OS. Так как система произошла от Linux, к ней применим термин root. Но в отличие от традиционных linux систем она работает на мобильных устройствах и имеет ряд особенностей.
На устройствах Android есть 3 типа root доступа:
• Full Root – это полный и постоянный доступ к Root-правам. Не работает на устройствах, имеющих NAND Lock
• Shell Root – Отличается от Full Root тем, что нет доступа к папке /system
• Temporary Root – как следует из названия, Root права даются временно (до перезагрузки устройства)
Root доступ на устройстве с платформой Android позволяет делать многие вещи. Вот некоторые из них:
• Редактировние системных файлов
• Настройка функций телефона
• Установка специальных ROOT-приложений
• Бэкап системы
• Установка полной версии Linux
• Установка других версий системы
• Создание собственных приложений
• Увеличение производительности или времени работы без подзарядки
• Установка firewall на устройство
Но при использовании root доступа на Android есть некоторые минусы, например:
• Зависание устройства
• Не будет производиться обновление устройства
• Устройство снимается с гарантии
• Есть вероятность привести устройство полностью неработоспособное состояние

Заключение

Во всех системах вход от имени администратора дает пользователю расширенные возможности, но при этом связан с определенным риском.
По сравнению с правами «Саурона» в других операционных системах, Администратор в Windows может выполнять достаточно ограниченный набор функций, что снижает гибкость системы, но при этом повышает безопасность. В частности, он не может изменять ядро системы и редактировать системные файлы.
В Linux же суперпользователь получает почти неограниченные возможности в плане управления своим компьютером, что может принести весьма ощутимый вред, вплоть до выхода из строя компьютера и потери всех данных. Неопытному пользователю лучше не использовать этот режим.
Для повышения безопасности в Linux при использовании root-прав существует и рекомендуется к использованию специальная команда sudo.
В системе Android суперпользователь также получает практически неограниченные права, но из-за сложности мобильных устройств, на которых система используется, пользоваться этими правами надо с максимальной осторожностью.