Как управлять пользователями в Linux

В этом руководстве мы ознакомимся с тем как создавать учетные записи пользователей, назначать привилегии sudo и удалять пользователей, а также как управлять группами пользователей.
Учетная запись пользователя должна обладать именем, уникальным в системе (в linux есть зарезервированные имена: «root», «hal» и «adm»).
Имя может состоять из букв латинского алфавита, арабских чисел и символов «_» (нижний пробел), «.» (точка).
При создании нового сервера первый вход осуществляется из-под учетной записи root, благодаря чему пользователь имеет право на выполнение любой операции. В целях безопасности работать под root не рекомендуется. Для выполнения общих задач лучше создать и использовать учетную запись пользователя с обычными правами.
Для пользователей с разными правами рекомендуется создавать дополнительные учетные записи. Каждый пользователь должен иметь собственную учетную запись.
Пользователь с обычными правами при необходимости может получить права администратора через механизм под названием sudo.

Требования

  • Пользователь с root-правами

Добавление пользователя

Если вы вошли в систему как пользователь root, вы можете создать нового пользователя в любое время, введя команду:
adduser username
Если вы вошли в систему как пользователь non-root, которому были предоставлены привилегии SUDO, вы можете добавить нового пользователя, введя команду:
sudo adduser username
Команда Sudo - это механизм для предоставления прав администратора, доступных только для суперпользователя root, обычным пользователям.
В обоих случаях необходимо будет ввести ответы на вопросы следующего типа:
  1. Назначить и подтвердить пароль для нового пользователя.
  2. Ввести любую дополнительную информацию о новом пользователе. Этот шаг необязателен и может быть пропущен. Если вы не хотите заполнять эти поля, то просто нажмите клавишу Enter.
  3. Подтвердить, что представленная информация является правильной, нажав клавишу Y, чтобы продолжить.
Учетная запись нового пользователя готова к использованию! Теперь вы можете войти, используя пароль, а также задать необходимые настройки.
Под каждой учетной записи пользователя создается свой каталог (home directory), в котором хранятся личные файлы и папки пользователя.

Пример создания пользователя с правами sudo

Войдите на сервер под учетной записью root:
ssh root@server_ip_address
Введите команду adduser для создания новой учетной записи в системе:
adduser имя_пользователя
Установите и подтвердите пароль нового пользователя следуя инструкциям на экране:
Enter new UNIX password: ******
Retype new UNIX password: ******
При успешном обновлении пароля система выведет сообщение: 
passwd: password updated successfully
Следуйте инструкциям на экране, чтобы вписать информацию о новом пользователе. Можно принять значения по умолчанию, оставив поля ввода пустыми.
Введите новое значение или нажмите клавишу ENTER для установки значений по умолчанию. 
    Full Name []:    Room Number []:    Work Phone []:    Home Phone []:    Other []:
Далее система запросит подтверждение того, что все данные введены корректно:
Is the information correct? [Y/n]
Нажмите клавишу Y для подтверждения правильности введенных данных.
 
Используйте команду usermod для добавления пользователя в группу sudo:
usermod -aG sudo username
По умолчанию в Ubuntu члены группы SUDO имеют привилегии SUDO.
 
Используйте команду su чтобы перейти к новой учетной записи пользователя:
su - username


В качестве нового пользователя, убедитесь, что вы можете использовать права Sudo, введя sudo перед командой, которую вы запустить с привилегиями суперпользователя:
sudo command_to_run


Например, вы можете просмотреть содержимое каталога /root, который обычно доступен только для суперпользователя:
sudo ls -la /root


Когда вы используете Sudo в сеансе впервые, вам будет предложено ввести пароль учетной записи пользователя. Введите пароль для продолжения:
[sudo] password for username:
Если пользователь находится в соответствующей группе, и пароль введен правильно, то команда, которая запускается с sudo, должна выполняться с правами суперпользователя.

Изменение настроек учетной записи пользователя

С помощью команды chfn можно внести или изменить информацию учетной записи пользователя (ФИО, рабочий телефон, рабочие координаты и т.д, username — имя пользователя):
chfn -f полное_имя -о office -p рабочий_телефон  -h  домашний_телефон -u -v username
 
Для задания пароля используется команда passwd:
passwd username
В результате выполнения команды нам будет предложено ввести новый пароль и повторить его.
 
Если мы хотим дать пользователю возможность сменить пароль при первом входе в систему, следует ввести команду:
change -d 0 username

Просмотр учетных записей пользователей

Вся информация об учетной записи пользователя хранится в файле /etc/passwd.
Чтобы посмотреть список пользователей, нужно ввести команду:
cat /etc/passwd
Вывод может выглядеть следующим образом: 
testk:x:1000:1000:testkam,103,,:/home/testk:/bin/bash
Эта строка имеет следующий формат:
account:password:UID:GID:GECOS:directory:shell
где:
account — имя пользователя
password — зашифрованный пароль пользователя
UID — идентификационный номер пользователя
GID — идентификационный номер основной группы пользователя
GECOS — необязательное поле, используемое для указания дополнительной информации о пользователе (например, полное имя пользователя)
directory — домашний каталог ($HOME) пользователя
shell — командный интерпретатор пользователя (обычно /bin/sh)
 
Для просмотра списка пользователей, которые находятся в данный момент времени в системе, используется команда who или w.
 
Результат выполнения команды who выглядит следующим образом: 
testk    pts/0        2016-11-18 11:42 (188.93.16.2)
 
Результат выполнения команды выглядит следующим образом:
11:43:46 up 17 days, 23:30,  1 user,  load average: 0.04, 0.01, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
testk    pts/0    188.93.16.2      11:42    1.00s  0.03s  0.00s w

Удаление пользователя

Для того чтобы удалить пользователя воспользуйтесь командой userdel:
sudo userdel username
Команда userdel имеет два основных ключа -f и -r:
  • sudo -f userdel username Принудительно удалить учетную запись пользователя, даже если он сейчас работает в системе.
  • sudo -r userdel username Удалить домашний каталог пользователя.

Управление группами

Каждый пользователь принадлежит к одной или нескольким группам.
Так же как и пользователь, группа обладает правам доступа к тем или иным каталогам, файлам, периферии (в системе есть зарезервированные группы).  
Группы объединяют пользователей для предоставления одинаковых полномочий на какие-либо действия.
Каждой группе назначается идентификационный номер (group ID), сокращённо GID, который является уникальным идентификатором группы. Принадлежность пользователя к группе устанавливается администратором.
 
Для просмотра всех групп системы используется команда:
cat /etc/group
 
Файл /etc/group определяет группы в системе.
Этот файл /etc/group для обнаружения системных групп можно просмотреть при помощи команды:
less /etc/group
 
Результат будет выглядеть следующим образом:
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:syslog
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
 Чтобы посмотреть группы, в которых состоит пользователь, введите команду:
groups username
 
Команда id показывает более подробную информацию:
id username
 
Для создание новой группы введите команду:
groupadd group
 
Для добавления пользователя в группу:
gpasswd -a username group
 
Вывод пользователя из группы осуществляется командой:
gpasswd -d username group
 
Для того чтобы удалить группу используется команда:
groupdel group

Добавить комментарий

Автору будет очень приятно узнать обратную связь о своем руководстве.

Комментариев 0