Учетная запись - совокупность данных о пользователе, необходимая для его аутентификации и предоставления различных прав доступа.
Права доступа - совокупность правил, регламентирующих порядок и условия доступа субъекта к объектам информационной системы.
Группа пользователей — именованное множество пользователей с одинаковыми правами доступа к тем или иным объектам.
У пользователя в Linux есть 2 основных атрибута - UID (user id) и GID (group id). UID - идентификатор пользователя, это число в диапазоне от 0 до 65535. UID = 0 принадлежит пользователю root. Как правило, в ОС могут быть системные пользователи и под них зарезервированы UID от 1 до 499. GID - соответственно, идентификатор группы. При создании пользователя в системе создается одноименная группа, поэтому каждый пользователь принадлежит, как минимум, этой группе.
Типы пользователей:

  • Суперпользователь (root) - пользователь с неограниченными правами, UID = 0, GID = 0. От имени этого пользователя разрешено выполнять любые действия - редактирование конфигурационных файлов, установка ПО, конфигурация устройств, удаление всего и вся.
  • Системные пользователи (демоны) - необходимы для обеспечения работы фоновых процессов, эти пользователи обычно не имеют оболочки и не могут авторизоваться в системе. Как правило, создаются при установке ПО. Демон - служебная программа, процесс, который работает в фоновом режиме. В ОС Windows это службы. Часто, имена демонов заканчиваются на букву d, то есть, например, демон ssh называется sshd.
  • Обычные пользователи системы, создаются администратором. Могут быть локальными или же сетевыми.

Информация о пользователях хранится в следующих файлах:

  1. /etc/passwd. Хотя название этого файла и напоминает слово пароль, тем не менее, пароли там не хранятся. В нем хранятся атрибуты пользователя, разделенные знаком :. Первый столбец - логин, второй - х (ранее там находился пароль), UID, GID, комментарий, домашний каталог пользователя, оболочка.
  2. /etc/group. В этом файле хранится информация о группах и пользователях, которые входят в эти группы. Формат файла аналогичен предыдущему - имя группы, пароль (теперь в другом файле и вообще крайне редко используется), gid, пользователи, входящие в эту группу.
  3. /etc/shadow. В этом файле хранятся пароли в зашифрованном виде. Данные в файле также разделены - имя пользователя, зашифрованный пароль, дата последнего изменения, минимальное число дней между изменениями пароля, максимальное время жизни пароля, количество дней до истечения срока действия пароля, количество дней после истечения срока действия пароля (после которого учетная запись будет отключена), срок действия учетной записи.

Действия над пользователями

  1. создание. Создавать пользователей можно командами useradd (создает пользователя и просит задать пароль) и adduser (при создании можно указать множество атрибутов). Наиболее часто используемые атрибуты при создании пользователя - комментарий (стоит все-таки использовать, если у вас не 1-2 пользователя в системе), домашняя директория (если не указать, то будет /home), оболочка, разрешено ли заходить в систему.
  2. задание пароля. Задать (или же изменить) пароль можно командой passwd
  3. изменение параметров пользователя. После создания все эти параметры можно изменить командой usermod

Над группами можно осуществлять аналогичные действия - создавать и изменять.
su - switch user. Эта команда позволяет сменить текущего пользователя, синтаксис выглядит следующим образом - su urer_name, сеанс при этом не завершается.


sudoers - файл, в котором прописано, какие пользователи могут использовать команду sudo (выполнить от имени суперпользователя). Также в этом файле можно указать, нужен ли использовать пароль для каких-либо команд. То есть можно сделать запуск какой-либо команды от имени sudo без пароля.

Файл sudoers можно редактировать только с помощью утилиты visudo!!! Если вы попробуете это сделать с помощью обычного редактора и ошибетесь в синтаксисе, то последствия могут быть непредсказуемыми.

Рассмотрим записи в этом файле:
%sudo ALL=(ALL:ALL) ALL

  • %sudo - имя пользователя или группа, к которой нужно применить правило (имя группы указывается после символа %, имя пользователя без)
  • Первое ALL означает, что правило применяется ко всем IP-адресам, второе ALL, что указанный пользователь может запускать команды в сессии любого пользователя, третье ALL означает, что указанный пользователь может запускать команды в любой группе. Последнее ALL указывает, что эти правила нужно применять ко всем командам
  • for_students/os/users.txt
  • Последнее изменение: 2022/02/14 09:43
  • ejlka