Unix / Linux - Администрирование пользователей

В этой главе мы подробно обсудим администрирование пользователей в Unix.

В системе Unix есть три типа учетных записей:

Корневой аккаунт

Это также называется superuserи будет иметь полный и неограниченный контроль над системой. Суперпользователь может запускать любые команды без каких-либо ограничений. Этот пользователь должен считаться системным администратором.

Системные учетные записи

Системные учетные записи - это те, которые необходимы для работы системных компонентов, например учетных записей электронной почты и sshdСчета. Эти учетные записи обычно необходимы для определенных функций в вашей системе, и любые их модификации могут отрицательно повлиять на систему.

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

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

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

Управление пользователями и группами

Есть четыре основных файла администрирования пользователей -

  • /etc/passwd- Сохраняет информацию об учетной записи пользователя и пароле. Этот файл содержит большую часть информации об учетных записях в системе Unix.

  • /etc/shadow- Содержит зашифрованный пароль соответствующей учетной записи. Не все системы поддерживают этот файл.

  • /etc/group - Этот файл содержит информацию о группе для каждой учетной записи.

  • /etc/gshadow - Этот файл содержит информацию об учетной записи безопасной группы.

Проверьте все указанные выше файлы с помощью cat команда.

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

Sr.No. Команда и описание
1

useradd

Добавляет аккаунты в систему

2

usermod

Изменяет атрибуты учетной записи

3

userdel

Удаляет аккаунты из системы

4

groupadd

Добавляет группы в систему

5

groupmod

Изменяет атрибуты группы

6

groupdel

Удаляет группы из системы

Вы можете использовать справку Manpage, чтобы проверить полный синтаксис для каждой упомянутой здесь команды.

Создать группу

Теперь мы поймем, как создать группу. Для этого нам нужно создать группы перед созданием любой учетной записи, в противном случае мы можем использовать существующие группы в нашей системе. У нас есть все группы, перечисленные в/etc/groups файл.

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

groupadd [-g gid [-o]] [-r] [-f] groupname

В следующей таблице перечислены параметры -

Sr.No. Вариант и описание
1

-g GID

Числовое значение идентификатора группы.

2

-o

Эта опция позволяет добавить группу с неуникальным GID.

3

-r

Этот флаг указывает groupadd добавить системную учетную запись

4

-f

Эта опция заставляет просто выйти со статусом успеха, если указанная группа уже существует. С -g, если указанный GID уже существует, выбирается другой (уникальный) GID

5

groupname

Фактическое имя группы будет создано

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

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

$ groupadd developers

Изменить группу

Чтобы изменить группу, используйте groupmod синтаксис -

$ groupmod -n new_modified_group_name old_group_name

Чтобы изменить название группы developers_2 на developer, введите -

$ groupmod -n developer developer_2

Вот как вы измените финансовый GID на 545 -

$ groupmod -g 545 developer

Удалить группу

Теперь мы поймем, как удалить группу. Чтобы удалить существующую группу, все, что вам нужно, этоgroupdel command и group name. Чтобы удалить финансовую группу, используйте команду -

$ groupdel developer

Это удаляет только группу, но не файлы, связанные с этой группой. Файлы по-прежнему доступны их владельцам.

Завести аккаунт

Давайте посмотрим, как создать новую учетную запись в вашей системе Unix. Ниже приводится синтаксис для создания учетной записи пользователя -

useradd -d homedir -g groupname -m -s shell -u userid accountname

В следующей таблице перечислены параметры -

Sr.No. Вариант и описание
1

-d homedir

Задает домашний каталог для учетной записи

2

-g groupname

Указывает групповую учетную запись для этой учетной записи

3

-m

Создает домашний каталог, если он не существует

4

-s shell

Задает оболочку по умолчанию для этой учетной записи

5

-u userid

Вы можете указать идентификатор пользователя для этой учетной записи

6

accountname

Фактическое имя учетной записи, которая будет создана

Если вы не укажете никаких параметров, система будет использовать значения по умолчанию. Вuseradd команда изменяет /etc/passwd, /etc/shadow, и /etc/group файлы и создает домашний каталог.

Ниже приведен пример создания учетной записи. mcmohd, установив его домашний каталог на /home/mcmohd и группа как developers. Этому пользователю будет назначен Korn Shell.

$ useradd -d /home/mcmohd -g developers -s /bin/ksh mcmohd

Перед тем как вводить указанную выше команду, убедитесь, что у вас уже есть группа разработчиков, созданная с помощьюgroupadd команда.

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

$ passwd mcmohd20
Changing password for user mcmohd20.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

Когда вы печатаете passwd accountname, это дает вам возможность изменить пароль, если вы являетесь суперпользователем. В противном случае вы можете изменить только свой пароль, используя ту же команду, но без указания имени учетной записи.

Изменить учетную запись

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

Например, чтобы изменить имя учетной записи mcmohd к mcmohd20 и чтобы соответственно изменить домашний каталог, вам нужно будет ввести следующую команду -

$ usermod -d /home/mcmohd20 -m -l mcmohd mcmohd20

Удалить учетную запись

В userdelКоманда может использоваться для удаления существующего пользователя. Это очень опасная команда, если не использовать ее с осторожностью.

Для команды доступен только один аргумент или опция .r, для удаления домашнего каталога и почтового файла учетной записи.

Например, чтобы удалить учетную запись mcmohd20 , введите следующую команду -

$ userdel -r mcmohd20

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