Управление пользователями и правами доступа База данных пользователей системы
Рисунок 2.28. база данных пользователей
Все данные о пользователях UNIX хранит в файле /etc/passwd в текстовом виде. Каждому пользователю соответствует одна строка, поля которой разделяются двоеточиями:
входное имя:x:UID:GID:полное имя:домашний каталог:стартовый shell
Рисунок 2.29. Пример файла /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/bin/false
daemon:x:2:2:daemon:/sbin:/bin/false
adm:x:3:4:adm:/var/adm:/bin/false
...
Каждый пользователь явно связан с одной из групп — это основная группа пользователя. Это сделано для того, чтобы каждый пользователь состоял хотя бы в одной группе. Все новые файлы, создаваемые процессами этого пользователя, в качестве группы-владельца будут получать основную группу данного пользователя.
Из примера видно, что некоторые пользователи имеют «неправильные» командные оболочки, такие как /bin/false, работа в которых невозможна (команда false только и делает, что возвращает ошибку и немедленно завершается). Это сделано специально для того, чтобы исключить возможность входа таких пользователей в систему, а соответствующие учётные записи в /etc/passwd принадлежат псевдопользователям, от имени которых выполняются некоторые системные задачи и которыми не пользуются реальные люди.
Пароли на вход в систему пользователей в UNIX не хранятся в открытом виде, хранятся только их хэши (набор байт, получаемый из пароля с помощью односторонней функции). Даже если злоумышленник получит значение этого хэша, ему придется подбирать пароль, применяя данную одностороннюю функцию к различным словам и сравнивая со значением хэша. Часто хэши хранятся в специальном файле (например, /etc/shadow), доступ к которому разрешен только системе, так что перебор вообще не возможен.
Аналогичным образом информация о группах хранится в файле /etc/group. Каждой строке файла соответствует информация о группе: её имя, числовой идентификатор и список пользователей, входящих в эту группу.
В современных версиях операционной системы Linux используется альтернативный механизм хранения паролей — TCB. Основное отличие состоит в том, что содержимое файла /etc/shadow «размазывается» по множеству каталогов, так что хэш пароля каждого пользователя хранится в каталоге, к которому только он один имеет доступ. Это позволяет ограничить привилегии утилиты passwd, с помощью которой пользователь может сам себе изменить пароль. При использовании схемы TCB для выполнения этой операции не требуется повышение привелений passwd (получение прав суперпользователя) с помощью атрибута SetUID.
Изменение информации о пользователях, так же как и добавление новых пользователей, может производиться прямым редактированием этих файлов, однако более корректным способом является использование специальных утилит, которые рассматриваются далее.
- Unix-подобные операционные системы
- Часть 1. Введение в операционные системы unix 10
- Часть 2. Использование unix 44
- Unix-подобныеОс
- Термин «unix-подобный» и торговая марка unix
- Категории
- История развития ос unix
- Часть 1. Введение в операционные системы unix
- Основные концепции операционных систем Обзор компьютерных систем
- Назначение операционной системы
- Операционная система как виртуальная машина
- Операционная система как менеджер ресурсов
- Архитектура операционной системы
- Монолитная операционная система
- Микроядерная операционная система
- Классификация операционных систем по назначению
- Архитектура unix. Файлы и устройства Особенности архитектуры unix
- Два объекта unix: файлы и процессы
- Беглый взгляд на архитектуру unix
- Ядро unix
- Файловая система unix
- Особенности файловой системы
- Виртуальная файловая система
- Дерево каталогов
- Устройства и драйверы
- Архитектура unix. Процессы
- Управление памятью
- Управление процессами
- Контекст процесса
- Планирование процессов
- Создание новых процессов
- Процессы и потоки
- Межпроцессное взаимодействие
- Разделяемая память
- Переменные окружения
- Сигналы
- Часть 2. Использование unix Терминал и командная строка
- Терминал
- Управляющие символы
- Одновременный доступ к системе
- Командная строка
- Командная оболочка
- Приглашение
- Команды
- Параметры
- Шаблоны
- Перенаправление ввода и вывода
- Программное окружение
- Стандартные переменные окружения
- Служебные символы
- Процесс выполнения команды
- Возвращаемое значение
- Эффективное использование командной строки
- Редактирование командной строки
- История команд
- Автодополнение
- Средства объединения команд
- Справочная подсистема
- Страницы руководства
- Поиск по руководствам
- Программа info
- Документация, поставляемая с программой
- Интегрированные системы документации
- Введение в безопасность unix
- Основы информационной безопасности
- Политика безопасности
- Управление доступом
- Аутентификация и авторизация
- Концепции безопасности unix
- Пользователи и группы
- Права доступа
- Разделяемые каталоги
- Подмена идентификатора процесса
- Ограничения базовой модели доступа и её расширения
- Суперпользователь
- Аутентификация пользователей
- Управление пользователями и правами доступа База данных пользователей системы
- Изменение базы данных пользователей
- Изменение прав доступа
- Ограничения сеанса пользователя
- Литература