Чтение онлайн

на главную

Жанры

Linux для пользователя

Костромин Виктор Алексеевич

Шрифт:

8.5. Управление пользователями

Задача управления пользователями имеет большое значение для истинно многопользовательских систем. Для персонального компьютера, о котором идет речь в этой книге, эта задача не так актуальна. Тем не менее, некоторые вопросы отразить необходимо, раз уж Linux по своей природе многопользовательская система.

Во-первых, еще раз следует повторить, что не стоит работать в системе от имени суперпользователя (кроме случаев выполнения сугубо административных задач). Следовательно, как минимум два пользователя у вас должны быть заведены, назовем их root и user. Но обходиться только двумя пользователями удается далеко не всегда. Даже на домашнем компьютере приходится давать

доступ детям или другим членам семьи, а на служебном компьютере может потребоваться дать ограниченный доступ другим сотрудникам организации. Кроме того, в системе всегда автоматически заводится ряд пользователей для выполнения служебных задач. Поэтому задача управления актуальна и для персонального компьютера. Задача эта состоит из нескольких подзадач, а именно:

• заведение новых пользователей;

• распределение пользователей по группам;

• задание прав и полномочий для нового пользователя;

• установление для него квот;

• блокирование, при необходимости, бюджета пользователя.

Рассмотрим кратко хотя бы основные из этих задач.

Для начала надо отметить, что список всех известных системе пользователей находится в файле /etc/passwd. Каждая строка этого файла соответствует одному пользователю и состоит из семи полей, разделенных двоеточиями:

• регистрационное имя пользователя;

• зашифрованный пароль;

• UID (идентификатор пользователя);

• GID (идентификатор группы);

• информация о пользователе (обычно полное имя, должность и телефоны);

• домашний каталог пользователя;

• регистрационный shell.

С точки зрения системы поля GID и информация о пользователе не имеют никакого значения, а имя пользователя используется только на этапе входа пользователя в систему (логировании). Дальше система идентифицирует пользователя по его UID. Идентификатор группы включается в этот файл только по традиции, потому что включение пользователей в различные группы определяется теперь файлом /etc/group. Второе поле каждой строки тоже уже не содержит зашифрованного пароля, теперь в этом поле стоит просто звездочка (*), а зашифрованные пароли переместились в файл /etc/shadow. Дело в том, что с увеличением производительности компьютеров появилась возможность определять открытый пароль по зашифрованному методом простого перебора всех возможных комбинаций символов. А поскольку файл etc/passwd доступен по чтению всем пользователям, безопасность многопользовательской системы ставится под удар. Файл же /etc/shadow доступен только суперпользователю, что уменьшает, если не снимает совсем, эту угрозу.

Уже из описания файла /etc/passwd вы могли заключить, что заведение нового пользователя не заканчивается тем, что администратор прописывает в этом файле дополнительную строку. Процесс подключения нового пользователя состоит из следующих этапов:

• занесение информации в файл /etc/passwd;

• задание исходного пароля для нового пользователя;

• создание для него домашнего каталога;

• копирование в этот каталог стандартных вариантов файлов запуска;

• установка адреса электронной почты и почтовых псевдонимов;

• включение пользователя в необходимые группы;

• установка квот и ограничений.

Конечно, можно все эти этапы выполнять и вручную, но все же проще и удобнее воспользоваться имеющимися в системе специальными программными средствами. Как уже было описано в гл. 3, заводить в системе нового пользователя удобнее всего командой useradd. Однако перед тем, как заводить пользователя, надо подготовить типовые файлы конфигурации, которые используются при вводе новых пользователей, и располагаются в каталоге /etc/skel. Один полезный совет: не заводите много новых пользователей, пока вы не настроили конфигурационные файлы и не поместили образцы в /etc/skel/*. И сразу после того, как вы отредактировали какой-то конфигурационный файл, скопируйте его в /etc/skel/.

Команда useradd заводит бюджет нового пользователя, создает для него домашний каталог, копирует в него файлы конфигурации из каталога /etc/skel. В качестве аргумента команде должно быть указано имя пользователя, которое потом будет использоваться им для входа в систему. Кроме того, с помощью дополнительных опций можно задать:

• данные о пользователе (имя и т.д.), записываемые в поле комментария в файле /etc/passwd (опция -c);

• имя или номер группы, к которой будет отнесен пользователь (опция -g);

• список групп, в которые будет включен данный пользователь (опция -G);

• UID пользователя, назначаемый вместо UID, задаваемого системой (опция -u);

• какая оболочка назначается пользователю (опция -s) и еще некоторые параметры.

С помощью опции -D можно изменять значения параметров, которые назначаются вновь создаваемому пользователю. Однако рассматривать эти возможности мы здесь не будем.

После ввода нового пользователя надо задать ему первоначальный пароль, что делается командой passwd login_name. После первого входа в систему пользователь должен будет поменять свой пароль с помощью той же команды (только login_name указывать ему не требуется).

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

Каждый пользователь может быть включен в произвольное число групп. Включение пользователя в различные группы может быть осуществлено путем "ручного" редактирования файла /etc/group суперпользователем, а может быть выполнено с помощью команд groupadd и groupmod.

В процессе работы пользователь может сменить имя, с которым он вошел в систему (поработать в системе от имени другого пользователя). Как уже говорилось, для этого используется команда su. В качестве аргумента команде в простейшем случае передается имя или идентификатор пользователя, под которым мы хотим работать в системе. При этом, если перед именем пользователя стоит дефис, то для пользователя открывается новая сессия (происходит как бы "перелогирование"), а если дефиса нет, то изменяется только имя пользователя, а окружение (например, текущий каталог) не изменяется [18] . В любом случае выводится запрос на ввод пароля того пользователя, под чьим именем мы хотим дальше работать.

18

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

Команда su чаще всего используется для того, чтобы временно получить доступ к системе с правами суперпользователя. Параметр в этом случае указывать не требуется [19] .

После того, как вы поработали под чужим именем, достаточно выполнить команду exit, чтобы вернуть себе свое обычное имя.

Команда sg аналогична команде su, но используется для смены группы. Доступ предоставляется в том случае, если пользователь является членом указанной группы. В результате выполнения этой команды все вновь созданные файлы и запускаемые процессы получат новый идентификатор группы.

19

Здесь под "параметром" имелось в виду имя пользователя, в бюджет которого вы переходите. К дефису эти слова относить не следует.

Поделиться:
Популярные книги

Мастер Разума IV

Кронос Александр
4. Мастер Разума
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Мастер Разума IV

Наследник с Меткой Охотника

Тарс Элиан
1. Десять Принцев Российской Империи
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Наследник с Меткой Охотника

Охота на попаданку. Бракованная жена

Герр Ольга
Любовные романы:
любовно-фантастические романы
5.60
рейтинг книги
Охота на попаданку. Бракованная жена

Я еще не барон

Дрейк Сириус
1. Дорогой барон!
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Я еще не барон

"Фантастика 2023-123". Компиляция. Книги 1-25

Харников Александр Петрович
Фантастика 2023. Компиляция
Фантастика:
боевая фантастика
альтернативная история
5.00
рейтинг книги
Фантастика 2023-123. Компиляция. Книги 1-25

Убивать, чтобы жить

Бор Жорж
1. УЧЖ
Фантастика:
героическая фантастика
боевая фантастика
рпг
5.00
рейтинг книги
Убивать, чтобы жить

Береги честь смолоду

Вяч Павел
1. Порог Хирург
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Береги честь смолоду

(Не)нужная жена дракона

Углицкая Алина
5. Хроники Драконьей империи
Любовные романы:
любовно-фантастические романы
6.89
рейтинг книги
(Не)нужная жена дракона

Вечная Война. Книга VI

Винокуров Юрий
6. Вечная Война
Фантастика:
боевая фантастика
рпг
7.24
рейтинг книги
Вечная Война. Книга VI

Неожиданный наследник

Яманов Александр
1. Царь Иоанн Кровавый
Приключения:
исторические приключения
5.00
рейтинг книги
Неожиданный наследник

Аномальный наследник. Том 1 и Том 2

Тарс Элиан
1. Аномальный наследник
Фантастика:
боевая фантастика
альтернативная история
8.50
рейтинг книги
Аномальный наследник. Том 1 и Том 2

На границе империй. Том 9. Часть 3

INDIGO
16. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 3

Медиум

Злобин Михаил
1. О чем молчат могилы
Фантастика:
фэнтези
7.90
рейтинг книги
Медиум

Мимик нового Мира 10

Северный Лис
9. Мимик!
Фантастика:
юмористическое фэнтези
альтернативная история
постапокалипсис
рпг
5.00
рейтинг книги
Мимик нового Мира 10