Общие сведения

В данном разделе рассмотрены основные моменты, касающиеся работы с пользователями в Системе.

Любая работа выполняется от имени одного из пользователей, зарегистрированного и авторизованного в Системе.

В Системе существуют три типа пользователей:

  • Администраторы – привилегированные пользователи с полным доступом к Системе. По умолчанию на серверной ОС после ее установки всегда есть один такой пользователь root.
  • Локальные пользователи – непривилегированные пользователи. Их учётные записи создаёт администратор. Особенность таких аккаунтов в ограниченном доступе к серверу в том, что они не могут пользоваться некоторыми системными утилитами, могут работать только с теми файлами и папками, к которым у них открыт доступ. Тем не менее привилегии локального пользователя можно повысить при необходимости.
  • Системные пользователи – учётные записи, автоматически создаваемые Системой для работы внутренних процессов и служб. Например, после установки веб-сервера Apache, который входит в состав стека LAMP, на сервере появляется пользователь www-data, от имени которого потом работает веб-сервер. Такие пользователи нужны для повышения безопасности.

Каждый пользователь имеет свой уникальный идентификатор пользователя UID. Идентификатор отличается в зависимости от типа пользователя:

  • администратор – 0;
  • обычный (локальный) пользователь – от 100;
  • системный пользователь – от 1 до 100.

Чтобы упростить процесс настройки прав для новых пользователей, их объединяют в группы. Каждая группа имеет свой набор прав и ограничений. Любой пользователь, создаваемый или добавляемый в такую группу, автоматически их наследует. Если при добавлении пользователя для него не указать группу, то у него будет своя, индивидуальная группа с именем пользователя. Один пользователь может одновременно входить в несколько групп.

Информацию о каждом пользователе сервера можно посмотреть в файле /etc/passwd. Пользователи в нём перечислены в следующем формате:

test-user:x:1000:1000::/home/test-user:/bin/bash

Значения параметров вывода информации о пользователях приведены ниже (Таблица 10).

Для отображения только учетных записей пользователей можно ввести команду:

users

Если известно имя пользователя и требуется узнать о нём больше информации, необязательно читать /etc/passwd. Всё то же самое можно посмотреть с помощью команды pinky -l :

pinky -l test-user

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

Узнать UID пользователя можно с помощью команды id:

id username

Вывод команды будет похожим на следующий:

uid=1001(username) gid=1001(username) groups=1001(username),27(sudo)

в котором содержится информация о том, что учетная запись username существует, она находится в основной группе username и дополнительной группе sudo; идентификатор учетной записи – 1001.

Также можно получить строку о пользователе из файла /etc/passwd:

getent passwd username

Вывод команды будет похожим на следующий:

username:x:1001:1001::/home/username:/bin/sh

в котором пользователь username имеет идентификатор пользователя и группы 1001, его домашняя директория – /home/username, командная оболочка – /bin/sh.

Для именования пользователей в ОС есть набор стандартных правил:

  • имя пользователя может содержать только английские буквы [a-z] в верхнем и нижнем регистре, цифры, символ** **"_", тире "-" и точку;
  • имя пользователя может оканчиваться символом "$";
  • имя пользователя не может начинаться с тире, содержать только цифры или состоять из "." или "..";
  • не рекомендуется использовать точку в начале имени пользователя;
  • имя пользователя может включать до 32 символов.