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

LinuxBeginner
Практиковаться сейчас

Введение

Эта лабораторная работа познакомит вас с базовыми операциями по управлению учетными записями пользователей в системах Linux. Вы научитесь создавать, изменять и удалять аккаунты, а также устанавливать и менять пароли. Эти навыки являются фундаментальными для системного администрирования Linux. Не беспокойтесь, если вы новичок — мы разберем каждый шаг подробно!

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

Начнем с создания новой учетной записи пользователя с именем "joker".

  1. Откройте терминал. В Linux терминал — это текстовый интерфейс для ввода команд.
  2. Введите следующую команду и нажмите Enter:
sudo useradd joker

Разберем команду по частям:

  • sudo — это команда, которая дает вам временные права суперпользователя (администратора). Мы используем ее, так как создание нового пользователя требует высокого уровня доступа.
  • useradd — команда для создания нового пользователя.
  • joker — имя пользователя, которое мы создаем.

Примечание: Если вы попытаетесь выполнить эту команду без sudo, вы получите ошибку "permission denied" (доступ запрещен). Это происходит потому, что обычным пользователям не разрешено создавать аккаунты — это задача системного администратора.

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

  1. Чтобы убедиться, что пользователь создан, проверим файл /etc/passwd:
sudo grep -w 'joker' /etc/passwd

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

Вы должны увидеть результат, похожий на этот:

joker:x:5001:5001::/home/joker:/bin/sh

Эта строка означает:

  • Имя пользователя: joker
  • Пароль: x (настоящий пароль зашифрован и хранится в другом месте)
  • ID пользователя (UID): 5001
  • ID группы (GID): 5001
  • Домашний каталог: /home/joker (пока еще не создан физически)
  • Оболочка (Shell) по умолчанию: /bin/sh

Создание пользователя с домашним каталогом

Теперь создадим еще одного пользователя по имени "bob" и сразу создадим для него домашний каталог.

  1. Выполните следующую команду:
sudo useradd -m bob

Опция -m указывает системе создать домашнюю директорию для пользователя. Домашний каталог — это личная папка, где пользователь может хранить свои файлы и настройки.

  1. Проверим, был ли создан домашний каталог:
sudo ls -ld /home/bob

Вы увидите примерно следующее:

drwxr-x--- 2 bob bob 57 Jan 19 13:33 /home/bob

Что означают эти данные:

  • d в начале строки означает, что это директория (каталог).
  • rwxr-x--- показывает права доступа (кто может читать, записывать или запускать файлы в этой папке).
  • Дважды повторенное bob указывает, что владельцем и основной группой каталога является bob.
  • 57 — размер каталога в байтах.
  • Jan 19 13:33 — дата и время создания.
  • /home/bob — путь к каталогу.

Установка пароля пользователя

Теперь нам нужно установить пароли для новых пользователей. Начнем с "joker".

  1. Введите команду:
sudo passwd joker
  1. Система попросит вас ввести новый пароль дважды. Для этой лабораторной работы используйте простой пароль, например, "password123".

Важно: Пароль не будет отображаться при вводе. Это стандартная мера безопасности в Linux, чтобы никто не подсмотрел количество символов. Если вы ошиблись, просто попробуйте еще раз. Важно: Запомните этот пароль! Он понадобится вам позже.

  1. В случае успеха вы увидите сообщение "passwd: password updated successfully".

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

Внутри системы Linux хранит зашифрованные пароли в защищенном файле /etc/shadow. Это гораздо безопаснее, чем хранить их в /etc/passwd, доступном для чтения всем пользователям.

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

Linux позволяет изменять различные настройки аккаунта уже после его создания. Для примера изменим путь к домашнему каталогу пользователя joker.

  1. Выполните команду:
sudo usermod -d /home/wayne joker

Разбор параметров:

  • usermod — команда для модификации настроек пользователя.
  • -d /home/wayne — указывает новый путь к домашнему каталогу.
  • joker — имя пользователя, которого мы редактируем.
  1. Проверим изменения:
sudo grep -w 'joker' /etc/passwd

Флаг -w используется для поиска точного совпадения слова. В выводе вы должны увидеть, что путь к домашнему каталогу joker обновился.

Изменение командной оболочки пользователя

Еще один важный параметр — это оболочка (shell) по умолчанию. Shell — это программа, которая интерпретирует и выполняет команды, вводимые вами в терминале.

По умолчанию для пользователя 'joker' установлена оболочка /bin/sh. Хотя sh (Bourne Shell) — это базовая оболочка, присутствующая почти везде, bash (Bourne Again Shell) гораздо функциональнее и удобнее для повседневной работы.

Смена оболочки на bash дает ряд преимуществ:

  • Более интуитивный интерфейс командной строки.
  • Расширенные возможности написания скриптов.
  • Улучшенные возможности настройки окружения под пользователя.

Вот как это сделать:

  1. Измените оболочку joker на bash:
sudo usermod -s /bin/bash joker
  1. Проверьте результат:
sudo grep -w 'joker' /etc/passwd

Теперь в конце строки для joker должно быть указано /bin/bash. Это значит, что bash стал его основной оболочкой.

После этого изменения при каждом входе в систему или открытии терминала joker будет попадать в более функциональную среду bash.

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

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

Зачем добавлять пользователя в группу sudo?

  1. Администрирование системы: Пользователи в этой группе могут выполнять задачи системного уровня.
  2. Установка ПО: Члены группы sudo могут устанавливать и обновлять пакеты программ.
  3. Настройка системы: Они могут редактировать системные конфигурационные файлы.
  4. Управление пользователями: Они могут создавать, изменять или удалять другие аккаунты.

Вы можете спросить: "Зачем добавлять кого-то в группу sudo, если мы и так можем использовать команду sudo?". Вот основные причины:

  • Удобство: Пользователи в группе sudo используют свой собственный пароль, им не нужно знать пароль суперпользователя (root).
  • Гибкий контроль: Администраторы могут настроить sudo так, чтобы разрешить конкретным пользователям выполнять только определенные команды.
  • Подотчетность: В отличие от использования общего пароля root, sudo записывает в журнал, кто именно и какую команду выполнил.
  • Безопасность: Безопаснее иметь именные аккаунты с доступом к sudo, чем передавать пароль root нескольким людям.

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

  • Это системный администратор или IT-специалист.
  • Это разработчик, которому нужно устанавливать специфическое ПО.
  • Это опытный пользователь, которому нужны расширенные права для работы, но вы не хотите давать ему полный доступ к root.

Помните: добавление в группу sudo дает огромную власть над системой, поэтому делайте это только при необходимости.

Теперь добавим joker в группу sudo:

  1. Выполните команду:
sudo usermod -aG sudo joker

Разбор:

  • usermod — команда изменения пользователя.
  • -aG — сокращение от "append to Group" (добавить в группу, не удаляя из текущих групп).
  • sudo — целевая группа.
  • joker — имя пользователя.
  1. Проверьте группы пользователя:
groups joker

В списке групп joker должна появиться группа sudo.

  1. Чтобы увидеть изменения в действии, переключимся на пользователя joker и попробуем выполнить административную команду:
su - joker

Эта команда переключает текущую сессию на пользователя joker. Вас попросят ввести пароль joker (тот самый password123). Напоминаем: символы при вводе не отображаются.

  1. Став пользователем joker, попробуйте прочитать файл, доступный только администратору:
sudo cat /etc/shadow

Снова введите пароль joker по запросу. Если вы видите содержимое файла /etc/shadow, значит, права sudo успешно получены.

  1. Завершив проверку, введите exit, чтобы вернуться к своему основному аккаунту (labex).

Примечание: В рабочей среде будьте предельно осторожны с тем, кого вы наделяете правами sudo. Большая власть — это большая ответственность!

Блокировка и разблокировка учетных записей

Иногда требуется временно закрыть доступ пользователю, не удаляя его данные.

  1. Заблокируйте аккаунт joker:
sudo passwd -l joker

Опция -l (lock) блокирует пароль.

  1. Попробуйте переключиться на пользователя joker:
su - joker

Введите пароль. Даже если вы введете его правильно, вы получите сообщение "authentication failure" (ошибка аутентификации). Аккаунт успешно заблокирован.

  1. Теперь разблокируем его:
sudo passwd -u joker

Опция -u (unlock) снимает блокировку.

  1. Снова попробуйте войти под именем joker:
su - joker

Теперь вход должен пройти успешно.

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

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

Наконец, научимся удалять учетные записи. Мы удалим пользователя "bob", созданного ранее.

  1. Удалите bob вместе с его домашним каталогом:
sudo userdel -r bob

Команда userdel удаляет пользователя. Опция -r (recursive) удаляет также домашнюю директорию и почтовый ящик пользователя.

  1. Убедитесь, что пользователь удален:
sudo grep -w 'bob' /etc/passwd
sudo ls -ld /home/bob

Обе команды не должны ничего вывести. Это подтверждает, что пользователь и его файлы полностью удалены из системы.

Резюме

Поздравляем! Вы успешно завершили лабораторную работу по управлению пользователями в Linux. Вы научились:

  1. Создавать новые учетные записи.
  2. Устанавливать пароли.
  3. Изменять параметры пользователя (домашний каталог, оболочку).
  4. Работать с группами пользователей.
  5. Блокировать и разблокировать доступ к аккаунту.
  6. Удалять учетные записи.

Вы также познакомились с важными концепциями Linux: файлом /etc/passwd, домашними каталогами, командными оболочками и группами. Эти навыки — фундамент для любого системного администратора. В реальной работе всегда следуйте политике безопасности вашей организации при управлении доступом.